Conversation
This comment has been minimized.
This comment has been minimized.
🟢 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. |
aa21edf to
506a231
Compare
4bfc4b6 to
113957f
Compare
Kafka / consumer-benchmarkParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 3 metrics, 0 unstable metrics. See unchanged results
|
e7e6409 to
b7fa1e8
Compare
Kafka / producer-benchmarkParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 3 metrics, 0 unstable metrics. See unchanged results
|
13947ba to
c034c2c
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. |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: c034c2c2b7
ℹ️ About Codex in GitHub
Your team has set up Codex to 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 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
The new guard ignores a second close of a continued scope, so the diagnostic does not report the repeated resolution.
🤖 Datadog Autotest · Commit c034c2c · What is Autotest? · @DataDog review to ask questions · Any feedback? Reach out in #autotest
|
@DataDog review |
There was a problem hiding this comment.
More details
Focused checks cover diagnostic classification, both test harnesses, and an affected integration. They show no reportable failure mode.
🤖 Datadog Autotest · Commit 5401fc8 · What is Autotest? · @DataDog review to ask questions · Any feedback? Reach out in #autotest
|
@codex review |
🛡️ Codex Security Review · Automatically triggeredSecurity review completed. No security issues were found in this pull request. Reviewed commit: Only the user who started this review can view the report in Codex. ℹ️ About Codex security reviews in GitHubThis is an experimental Codex feature. Security reviews are triggered when:
Once complete, Codex will leave suggestions, or a comment if no findings are found. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 5401fc8543
ℹ️ About Codex in GitHub
Your team has set up Codex to 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 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| @@ -15,12 +15,6 @@ import static datadog.trace.agent.test.utils.TraceUtils.runUnderTrace | |||
|
|
|||
| class HystrixObservableTest extends HystrixTestRunner { | |||
There was a problem hiding this comment.
Keep strict writes disabled until the Hystrix race is fixed
When the asynchronous scheduler variants run in CI, this class now inherits useStrictTraceWrites() == true, which uses the discarding pending-trace buffer; the deleted override explicitly documented that this suite still times out in that mode. Because this change modifies neither the Hystrix continuation lifecycle nor the test's synchronization—and removes the same safeguard from HystrixObservableChainTest—those variants can again reach their trace assertion while async references remain outstanding and time out. Fix that lifecycle or synchronization before removing these overrides.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
this is a great catch. I managed reproducing the CI issue by stress testing and got a failure due to a race in the rxjava dependency (not hystrix itself) used for testing. Now not to lower the coverage we found a way to remove the race in the testing. So I'll solve this comment as soon as #12570 will be merged
What Does This Do
Adds default-on scope and continuation lifecycle diagnostics to instrumentation tests.
The diagnostic records continuation and scope events during each test, waits briefly for asynchronous cleanup, and fails with an actionable timeline when it detects problems such as:
The timeline includes elapsed time, thread transitions, ownership state, and relevant call sites so the missing lifecycle edge can be identified without reconstructing it from a trace timeout.
flowchart LR A[Capture continuation] --> B[Resume context] B --> C[Run asynchronous work] C --> D[Close scope] D --> E[Release continuation] E --> F[Write complete trace] C -. missing cleanup .-> G[Test ends] G --> H[Diagnostic failure] H --> I[Timeline with thread and callsite] style E fill:#d5f5e3,stroke:#239b56 style H fill:#fadbd8,stroke:#c0392bHow is it enabled?
The diagnostic runs automatically for both instrumentation-test harnesses:
A narrow opt-out is available only for tests that are incompatible with the diagnostic itself:
@TrackScopeContinuations(
enabled = false,
reason = "Explain the incompatibility and removal condition")
The reason is mandatory. The opt-out is not intended for unresolved continuation leaks.
Additional behavior
Motivation
Strict trace writing can reveal that asynchronous work is still pending, but it does not explain where ownership was lost.
This diagnostic connects capture, activation, scope closure, and continuation resolution into one timeline, making continuation failures reproducible and actionable for both humans and automated integration work.
Fixed issues leveraging that:
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]