🍒 12295 - fix(netty-4.1): Treat Netty native client aborts as non-error responses - #12329
🍒 12295 - fix(netty-4.1): Treat Netty native client aborts as non-error responses#12329ygree wants to merge 1 commit into
Conversation
…es (#12295) fix(netty-4.1): Reproduce Netty's `writevAddresses(..) failed with error(-32): Broken pipe` resulting in an error span with 500 status fix(netty-4.1): Stop treating cancelled Netty responses as errors Move client abort detection into the Netty-specific decorator Merge branch 'master' into ygree/treat-netty-broken-pipe-as-no-err Fix Netty pipelining test trace isolation Assert and drain expected traces in AppSec pipelining scenarios so spans are consumed by the tests that create them. The failure appeared now because this branch adds native Netty latest-dep dependencies/tests, changing the `latestDepTest` classpath and execution order enough for previously unasserted AppSec traces to be written after the next test’s writer reset. Add method-aware server trace matching for the HEAD response case. Removed the two stale `DDSpan.addThrowable` null-message hardening tests from DDSpanTest.java Make Netty native client-abort matching flexible but scoped Replace brittle exact-message matching with a scoped matcher for Netty NativeIoException writev failures ending in known client-abort errno messages. This covers another observed Linux ECONNRESET format: writevAddresses(..) failed with error(-104): Connection reset by peer while still limiting the non-error treatment to native Netty write-side client aborts, such as Broken pipe and Connection reset by peer, instead of broadly suppressing unrelated native I/O failures. Merge branch 'master' into ygree/treat-netty-broken-pipe-as-no-err Co-authored-by: yury.gribkov <yury.gribkov@datadoghq.com> (cherry picked from commit 042bde8)
There was a problem hiding this comment.
More details
The change keeps the HTTP status for failed writes. It removes the error flag only for known Netty native client-abort messages and keeps the error type and message.
🤖 Datadog Autotest · Commit d3b1cad · What is Autotest? · @DataDog review to ask questions · Any feedback? Reach out in #autotest
|
🎯 Code Coverage (details) 🔗 Commit SHA: d3b1cad | Docs | View more details | Give us feedback! |
🟢 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. |
Kafka / producer-benchmarkParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 3 metrics, 0 unstable metrics. See unchanged results
|
Kafka / consumer-benchmarkParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 3 metrics, 0 unstable metrics. See unchanged results
|
|
Close it in favor of the upcoming minor release, as no patch release is planned. |
Backport #12295 to release/v1.65.x