enhancement(antithesis): floor buffer size, multi-value packed metrics#1799
enhancement(antithesis): floor buffer size, multi-value packed metrics#1799blt wants to merge 1 commit into
Conversation
|
Warning This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
This stack of pull requests is managed by Graphite. Learn more about stacking. |
|
Binary Size Analysis (Agent Data Plane)Baseline: d93575e · Comparison: 5e18a53 · diff ✅ Binary size difference within thresholdChanges by Module
Detailed Symbol Changes |
Regression Detector (Agent Data Plane)Run ID: Optimization Goals: ✅ No significant changes detectedFine details of change detection per experiment (35)Experiments configured
Bounds Checks: ✅ Passed (5)
ExplanationA change is flagged as a regression when |Δ mean %| > 5.00% in the regressing direction for its optimization goal AND SMP marks the experiment as a regression ( |
32a48db to
7893e8b
Compare
dd0c580 to
6945527
Compare
7893e8b to
c68f7bf
Compare
6e47ff1 to
b291254
Compare
2dbd8ab to
36bc156
Compare
b291254 to
2ac1e74
Compare
36bc156 to
2c739f2
Compare
2ac1e74 to
90323e5
Compare
2c739f2 to
cd5fbd8
Compare
90323e5 to
5a9453c
Compare
cd5fbd8 to
83797ef
Compare
e5880cc to
3662eca
Compare
63eded0 to
76f6d9b
Compare
648ccda to
ed10986
Compare
There was a problem hiding this comment.
Pull request overview
Expands the Antithesis DogStatsD workload generator to occasionally emit multi-value (:-packed) metric values, adds a “multi-value emitted” assertion anchor to keep that behavior non-vacuous under Antithesis, and adjusts sampled DogStatsD receive-buffer sizing so most runs use realistic (>=128B) buffers while still probing edge/boundary values.
Changes:
- Add multi-value packed metric value generation and plumb a boolean signal up through
dogstatsd::sendfor assertions. - Add an Antithesis assertion anchor that a workload sometimes emits a multi-value metric.
- Bias
dogstatsd_buffer_sizesampling toward >=128B values while keeping rare small/boundary probes.
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| test/antithesis/scratchbook/existing-assertions.md | Updates assertion inventory text/table to reflect the new multi-value anchor (but contains an inaccurate ripgrep claim). |
| test/antithesis/harness/src/payload/dogstatsd/metrics.rs | Emits multi-value :-packed metric values (~5%) and returns whether packing occurred. |
| test/antithesis/harness/src/payload/dogstatsd.rs | Propagates “multi-value emitted” signal from metric writer through send(). |
| test/antithesis/harness/src/bin/parallel_driver_send_dogstatsd.rs | Tracks whether any multi-value metric was generated and asserts it happens sometimes. |
| test/antithesis/harness/src/bin/first_sample_config/config.rs | Introduces sample_buffer_size to keep most buffer sizes >=128B while preserving rare boundary probes. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
0995a19 to
40e4b89
Compare
ed10986 to
46dd5e3
Compare
40e4b89 to
e1d6126
Compare
46dd5e3 to
ac24172
Compare
e1d6126 to
973539e
Compare
ac24172 to
7d8bd70
Compare
7d8bd70 to
cf3b123
Compare
973539e to
0a129a2
Compare
cf3b123 to
6320589
Compare
0a129a2 to
43ded69
Compare
6320589 to
59e0673
Compare
| | `test/antithesis/harness/src/bin/parallel_driver_send_dogstatsd.rs:92` | `assert_reachable!` | "workload ran a dogstatsd batch" | harness binary | Confirms the DSD driver ran a batch. Details carry the attempted-line count and socket path. | | ||
| | `test/antithesis/harness/src/bin/parallel_driver_send_dogstatsd.rs:96` | `assert_sometimes!` | "workload sent a dogstatsd line" (`attempted > 0`) | harness binary | A batch can sample count == 0, so running does not imply sending. Proves a timeline sometimes actually sends a line. | | ||
| | `test/antithesis/harness/src/bin/parallel_driver_send_dogstatsd.rs:101` | `assert_sometimes!` | "workload emitted a multi-value metric" (`multi_value`) | harness binary | Proves a timeline sometimes emits a `:`-packed multi-value metric, the form ADP splits on colons. | |
| | `test/antithesis/harness/src/bin/parallel_driver_send_dogstatsd.rs:106` | `assert_sometimes!` | "workload ran a fully clean batch" (`attempted > 0 && Clean`) | harness binary | Proves the clean branch is sometimes exercised. | | ||
| | `test/antithesis/harness/src/bin/parallel_driver_send_dogstatsd.rs:111` | `assert_sometimes!` | "workload ran a fully feral batch" (`attempted > 0 && Feral`) | harness binary | Proves the feral branch is sometimes exercised. | | ||
| | `test/antithesis/harness/src/bin/parallel_driver_send_dogstatsd.rs:116` | `assert_sometimes!` | "workload ran a mixed batch" (`attempted > 0 && Mixed`) | harness binary | Proves the mixed branch is sometimes exercised. | |
| - `rg -li "antithesis" -g '*.rs' -g '*.toml'` — matches in ADP `main.rs`, the two harness binaries, | ||
| and the `Cargo.toml` files above. |
Sample dogstatsd_buffer_size mostly >=128 so a tiny buffer does not silently zero delivery. Emit multi-value :-packed metrics ~5% with a Sometimes anchor. Rename the send-success anchor to 'workload sent a dogstatsd line'.
43ded69 to
b0073e7
Compare
59e0673 to
5e18a53
Compare

Summary
Expand the antithesis rig to:
dogstatsd_buffer_sizeis mostly larger than 128 bytes without excluding smaller values andChange Type
How did you test this PR?
Run under antithesis.
References
N/A