Repository navigation
Migrate dd-trace-core groovy files to java part 13 - #12253
Conversation
|
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: cd78f21 | Docs | View more details | Give us feedback! |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 37bcdd17fc
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
🟢 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. |
There was a problem hiding this comment.
The Java migration weakens one exact call-count check. A repeated startBucket call now passes in the serialization-error test, but the old Groovy test rejects it.
🤖 Datadog Autotest · Commit 37bcdd1 · What is Autotest? · @DataDog review to ask questions · Any feedback? Reach out in #autotest
PerfectSlayer
left a comment
There was a problem hiding this comment.
Left minor comment about reusing environment component for test deactivation
There was a problem hiding this comment.
More details
The migrated blank Number cell becomes null before type conversion. TableTest passes null to the non-primitive parameter, so the reported converter failure does not occur.
🤖 Datadog Autotest · Commit 1533ac5 · What is Autotest? · @DataDog review to ask questions · Any feedback? Reach out in #autotest
sarahchen6
left a comment
There was a problem hiding this comment.
Small notes, but otherwise LGTM
There was a problem hiding this comment.
I ran pr-review-toolkit:code-reviewer locally and I'm only pasting the critical issues instead of the entire blob (it might be worth running it locally). Feel free to discard what's not appropriate for this PR
Critical Issues (must fix before merge):
- [assertions] ClientStatsAggregatorTest.java:1976 — Groovy's 1 * writer.add({...}) >> { assert e.getHitCount()==1 && e.getDuration()==duration } became verify(writer).add(argThat(e -> AggregateEntryTestUtils.equals(e, expected))), whose shared equals() explicitly excludes counter/histogram state. Nothing now checks hit count or duration. Fix: mirror the doAnswer on add(...) used by sibling shouldReportPeriodically (:2016-2023).
- [resources] ClientStatsAggregatorTest.java — 28 aggregator.close() calls with zero finally in the whole file (verified: grep for finally returns 0). Since assertions are latch/timing-based, any assertion failure leaks a started reporter thread + inbox for the rest of the JVM fork, risking cascading failures in unrelated tests. Inconsistent with sibling files in the same PR (ClientStatsAggregatorDisableTest, ClientStatsAggregatorBootstrapTest, FootprintForkedTest) which correctly use try/finally. Fix: hold aggregator in a field, close in @AfterEach.
- [resources] OkHttpSinkTest.java:101 — unbounded latch.await() with no timeout; a listener that never fires hangs the Gradle worker instead of failing. MetricsReliabilityTest got this right (await(10, SECONDS)) — inconsistency within the same PR.
- [JUnit hygiene] ClientStatsAggregatorTest.java:2241-2246 — hand-rolled try { ...; throw new AssertionError(...) } catch (TimeoutException expected) {} instead of assertThrows. As written, the AssertionError path also skips the close() at :2255, compounding the resource leak above.
fixed
fixed
issue exists in previous version, will do a followup in a next PR
fixed |
f881a10 to
5d41c0e
Compare
we migrate 17 tests: - ConflatingMetricAggregatorTest - FootprintForkedTest - MetricsAggregatorFactoryTest - MetricsReliabilityTest - OkHttpSinkTest - SerializingMetricWriterTest - AllSamplerTest - AsmStandaloneSamplerTest - DeterministicSpanSamplerTest - DeterministicTraceSamplerTest - ForcePrioritySamplerTest - RateByServiceTraceSamplerTest - RuleBasedSamplingTest - SamplerTest - SingleSpanSamplerTest - SpanSamplingRulesTest - TraceSamplingRulesTest
|
/merge |
|
View all feedbacks in Devflow UI.
It will be processed automatically as soon as GitHub reports it as mergeable. View in MergeQueue UI.
This pull request was closed. |
|
/code blockers |
|
View all feedbacks in Devflow UI.
Checking merge blockers for #12253...
Detected 5 merge blocker(s) to address: 🔴 Blocking
|
Pull request was closed
|
/merge -@ 1 hour |
|
View all feedbacks in Devflow UI.
Pull Request scheduled to be added to the queue on Wed, 26 Aug 2026 21:02:00 UTC
The expected merge time in
Build pipeline has failing jobs for c7474dc: What to do next?
DetailsSince those jobs are not marked as being allowed to fail, the pipeline will most likely fail. |
|
/merge |
|
View all feedbacks in Devflow UI.
PR already in the queue with status delayed |
|
/merge |
|
View all feedbacks in Devflow UI.
The expected merge time in
|
d49562f
into
master
What Does This Do
we migrate 17 tests:
Motivation
this is part of the effort to migrate groovy tests to Java/JUnit
part1: #11053
part2: #11062
part3: #11085
part4: #11146
part5: #11217
part6: #11362
part7: #11374
part8: #11437
part9: #11488
part10: #11543
part11: #11566
part12: #11619
Additional Notes
Contributor Checklist
type:and (comp:orinst:) labels in addition to any other useful labelsclose,fix, or any linking keywords when referencing an issueUse
solvesinstead, and assign the PR milestone to the issueJira ticket: [PROJ-IDENT]