mfyuce commented on PR #3516:
URL: https://github.com/apache/iggy/pull/3516#issuecomment-4766282575

   The `partial_success: None` concern and the log-flood / misleading-async 
comment were both addressed in the push from earlier today (commit cfd47d1d):
   
   - `send_messages` is now a plain `fn` (no `.await`), counts drops silently 
in the loop, and fires a single `warn!("dropped {dropped}/{total} {signal} 
messages")` after the loop.
   - Each service impl now populates the OTLP-spec rejection field 
(`rejected_log_records`, `rejected_data_points`, `rejected_spans`) when the 
drop count is nonzero.
   
   On the `try_send` vs `send().await + timeout + RESOURCE_EXHAUSTED` question: 
both are valid. The current approach uses non-blocking `try_send` and reports 
drops via `partial_success`, which keeps the gRPC handler non-blocking and is 
spec-compliant. The `RESOURCE_EXHAUSTED` path forces the client to back off and 
retry, which avoids data loss but holds the gRPC connection open for up to the 
timeout duration and can cause connection pile-up under sustained load. Happy 
to switch if you prefer the stronger backpressure guarantee.
   
   /ready


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to