Repository navigation
Fix race in ConfigurationUpdater - #12496
Conversation
definitionSources must be thread safe for usage as accept method can be called concurrently
|
Hi! 👋 Thanks for your pull request! 🎉 To help us review it, please make sure to:
If you need help, please check our contributing guidelines. |
There was a problem hiding this comment.
Two concurrent accept calls can still apply configuration snapshots in the wrong order. An older snapshot can replace a newer snapshot and remove the second update until another call occurs.
🤖 Datadog Autotest · Commit 388c690 · What is Autotest? · @DataDog review to ask questions · Any feedback? Reach out in #autotest
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 388c6902ac
ℹ️ 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".
This comment has been minimized.
This comment has been minimized.
Debugger benchmarksParameters
See matching parameters
SummaryFound 5 performance improvements and 0 performance regressions! Performance is the same for 4 metrics, 6 unstable metrics.
See unchanged results
Request duration reports for reportsgantt
title reports - request duration [CI 0.99] : candidate=None, baseline=None
dateFormat X
axisFormat %s
section baseline
noprobe (352.296 µs) : 322, 383
. : milestone, 352,
basic (323.198 µs) : 317, 330
. : milestone, 323,
loop (8.091 ms) : 8028, 8154
. : milestone, 8091,
section candidate
noprobe (356.084 µs) : 314, 398
. : milestone, 356,
basic (318.785 µs) : 311, 326
. : milestone, 319,
loop (7.572 ms) : 7566, 7579
. : milestone, 7572,
|
🟢 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. |
avoid lost of definitions on concurrent accepts
|
/merge |
|
View all feedbacks in Devflow UI.
The expected merge time in
Build pipeline has failing jobs for ebf8ce6: 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.
The expected merge time in
Build pipeline has failing jobs for dae9328: 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.
The expected merge time in
Build pipeline has failing jobs for 4be52a4: 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.
The expected merge time in
|
What Does This Do
definitionSourcesmust be thread safe for usage asacceptmethod can be called concurrentlyalso the accept method need to apply configuration and new defintions atomically to avoid lost of defintions for
concurrent accept calls
therefore the
configurationLockis extended for the whole accept methodMotivation
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: DEBUG-6209