Drop stale ddprof ThreadContext/BufferWriter* native-image references - #12100
Conversation
There was a problem hiding this comment.
More details
The native-image metadata removals are behaviorally consistent: the four deleted profiler classes no longer appear in either runtime class-initialization arguments or reflection configuration, while the remaining configuration stays valid. Gradle tests could not run because the sandbox could not download Gradle 9.6.1, but executable JSON and diff-level adversarial checks passed.
📊 Validated against 5 scenarios · Open Bits AI session
🤖 Datadog Autotest · Commit 438e61c · What is Autotest? · @DataDog review to ask questions · Any feedback? Reach out in #autotest
java-profiler's Phase 3 DBB-context removal (DataDog/java-profiler#696) deletes ThreadContext, BufferWriter, BufferWriter8, and BufferWriter9. The GraalVM native-image class-initialization config and reflection config here still name them; a native-image build against the next ddprof release fails resolving those classes. Drop the now-nonexistent entries ahead of the bump.
438e61c to
fda99b6
Compare
|
Hi! 👋 Thanks for your pull request! 🎉 To help us review it, please make sure to:
If you need help, please check our contributing guidelines. |
|
🎯 Code Coverage (details) 🔗 Commit SHA: fda99b6 | Docs | Datadog PR Page | Give us feedback! |
PerfectSlayer
left a comment
There was a problem hiding this comment.
Thanks for the clean up
🟢 Java Benchmark SLOs — All performance SLOs passed
PR vs. master results
Commit: Load and DaCapo benchmarks can be triggered manually in the GitLab pipeline. Results will appear in the Benchmarking Platform UI after completion. |
|
/merge |
|
View all feedbacks in Devflow UI.
The expected merge time in
|
2eddb77
into
master
What
Removes the
com.datadoghq.profiler.ThreadContext,BufferWriter,BufferWriter8, andBufferWriter9entries from the GraalVM native-image-H:ClassInitializationconfig andreflect-config.json.Why
DataDog/java-profiler#696 (Phase 3 of the OTEP context-storage migration) deletes all four classes from
ddprof. This repo'sddprofdependency is currently pinned at 1.48.0 (predates that PR), so nothing is broken yet — but once it bumps to a release containing #696, a native-image build will fail: GraalVM errors when a class named in-H:ClassInitialization=...:run_timeorreflect-config.jsoncan't be resolved on the classpath.ContextSetteris unaffected — java-profiler is restoring a minimal pure-JavaoffsetOf()/size()version of it forDatadogProfiler's continued use, so no change needed here for that.Test plan
reflect-config.jsonre-validated as well-formed JSON after editddprofis still 1.48.0; this is a preemptive fix for the next bump)🤖 Generated with Claude Code