Skip to content

fix: agent OTLP receiver max_recv_msg_size_mib=64 (was silently dropping high-cardinality batches) - #351

Merged
zzylol merged 1 commit into
mainfrom
fix/agent-grpc-msg-size-cap
May 8, 2026
Merged

zzylol merged 1 commit into
mainfrom
fix/agent-grpc-msg-size-cap

Conversation

@zzylol

@zzylol zzylol commented May 8, 2026

Copy link
Copy Markdown
Contributor

Producer→agent gRPC failures with high-cardinality HLL batches (5K series × 500 user_ids) > 4 MiB default cap. Both PR #112 and #350 flagged this. Three sites (static placeholder + 2 typed-emit arms in stage_config.rs).

PR #112 (freshness probe cache) and PR #350 (storage routing cumulative)
both flagged producer→agent gRPC failures with high-cardinality batches:

  rpc error: code = ResourceExhausted desc = grpc: received message after
  decompression larger than max (X vs. 4194304)

The gateway already has `max_recv_msg_size_mib: 64` (controller emit at
stage_config.rs:428 + the corresponding gateway placeholder), but the
AGENT receiver inherits the 4 MiB grpc default. With 5K series × 500
user_ids on the new HLL workload, batches exceed 4 MiB and the agent
silently drops them — no metric flow → no sketch state → no probe data.

Three sites:
- `deploy/configs/asap-otel-agent-b6-asap-single-sketch.yaml` (static
  placeholder loaded via volume mount)
- `controller/src/config/stage_config.rs:128` (typed Edge emit, the
  legacy single-pipeline arm)
- `controller/src/config/stage_config.rs:852` (typed Edge emit, the
  5-sketch routing-connector arm)

OTAP variant (`stage_config_otap.rs`) uses a different listener_addr
shape; left untouched — needs a separate look.

Refs #46.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@zzylol
zzylol merged commit 59d2a98 into main May 8, 2026
@zzylol
zzylol deleted the fix/agent-grpc-msg-size-cap branch May 9, 2026 18:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant