docs(dogstatsd): document dogstatsd_mem_based_rate_limiter.* as architectural divergence#1775
docs(dogstatsd): document dogstatsd_mem_based_rate_limiter.* as architectural divergence#1775jszwedko wants to merge 5 commits into
dogstatsd_mem_based_rate_limiter.* as architectural divergence#1775Conversation
…tectural divergence Expands the single .enabled entry in the Not Planned table to cover all 11 keys under the prefix, and adds an explanation section describing why these Go GC-specific mechanisms have no Rust equivalent in ADP and what ADP uses instead (MemoryBounds, MemoryLimiter, bounded channels). Closes #1351 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
… row Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…ble row Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…tion Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Binary Size Analysis (Agent Data Plane)Baseline: 1bd1613 · Comparison: ddba05e · diff ✅ Binary size difference within thresholdChanges by Module
Detailed Symbol Changes |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 4d62df945b
ℹ️ 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".
| - **Structural backpressure**: bounded channels between components provide back-pressure | ||
| independently of memory monitoring. | ||
|
|
||
| To set a process memory limit in ADP, use `memory_limit` (bytes). The `memory_slop_factor` |
There was a problem hiding this comment.
Document the required memory mode
When a user follows this replacement guidance and only sets memory_limit, ADP does not actually enforce the static bounds or start the RSS-based limiter: memory_mode defaults to Disabled and initialize_memory_bounds returns a no-op limiter in that branch (lib/saluki-app/src/memory.rs lines 91-93 and 157-177). This section should mention that the described refusal/backpressure behavior requires memory_mode: strict or permissive (and enable_global_limiter for dynamic backpressure), otherwise the ignored DogStatsD limiter keys are not replaced by active memory limiting.
Useful? React with 👍 / 👎.
This comment has been minimized.
This comment has been minimized.
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 ( |
Summary
Expands the single
.enabledstub in the DogStatsD configuration doc's "Not Planned" table to cover all 11dogstatsd_mem_based_rate_limiter.*keys, and adds an explanation section that describes why these Go GC–specific mechanisms have no Rust equivalent in ADP and what ADP uses instead (staticMemoryBoundsdeclarations, aMemoryLimiterpolling RSS, and bounded channels for structural backpressure).Closes #1351
Test plan
🤖 Generated with Claude Code