-
Notifications
You must be signed in to change notification settings - Fork 470
fix: ensure connection is reset if from_http_response raises an exception #15559
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
Signed-off-by: Juanjo Alvarez <[email protected]>
Signed-off-by: Juanjo Alvarez <[email protected]>
|
|
Bootstrap import analysisComparison of import times between this PR and base. SummaryThe average import time from this PR is: 247 ± 2 ms. The average import time from base is: 250 ± 2 ms. The import time difference between this PR and base is: -2.3 ± 0.1 ms. Import time breakdownThe following import paths have shrunk:
|
Performance SLOsComparing candidate juanjux/http-writer-ensure-reset (7fea613) with baseline main (ddecdc2) 📈 Performance Regressions (2 suites)📈 iastaspectsospath - 24/24✅ ospathbasename_aspectTime: ✅ 5.065µs (SLO: <10.000µs 📉 -49.3%) vs baseline: 📈 +20.7% Memory: ✅ 38.437MB (SLO: <41.000MB -6.3%) vs baseline: +4.8% ✅ ospathbasename_noaspectTime: ✅ 1.089µs (SLO: <10.000µs 📉 -89.1%) vs baseline: ~same Memory: ✅ 38.614MB (SLO: <41.000MB -5.8%) vs baseline: +5.1% ✅ ospathjoin_aspectTime: ✅ 6.050µs (SLO: <10.000µs 📉 -39.5%) vs baseline: +1.1% Memory: ✅ 38.574MB (SLO: <41.000MB -5.9%) vs baseline: +4.6% ✅ ospathjoin_noaspectTime: ✅ 2.298µs (SLO: <10.000µs 📉 -77.0%) vs baseline: +0.9% Memory: ✅ 38.574MB (SLO: <41.000MB -5.9%) vs baseline: +4.6% ✅ ospathnormcase_aspectTime: ✅ 3.457µs (SLO: <10.000µs 📉 -65.4%) vs baseline: -0.3% Memory: ✅ 38.535MB (SLO: <41.000MB -6.0%) vs baseline: +4.9% ✅ ospathnormcase_noaspectTime: ✅ 0.576µs (SLO: <10.000µs 📉 -94.2%) vs baseline: +0.2% Memory: ✅ 38.574MB (SLO: <41.000MB -5.9%) vs baseline: +4.6% ✅ ospathsplit_aspectTime: ✅ 4.845µs (SLO: <10.000µs 📉 -51.5%) vs baseline: +0.8% Memory: ✅ 38.496MB (SLO: <41.000MB -6.1%) vs baseline: +4.8% ✅ ospathsplit_noaspectTime: ✅ 1.587µs (SLO: <10.000µs 📉 -84.1%) vs baseline: +0.3% Memory: ✅ 38.653MB (SLO: <41.000MB -5.7%) vs baseline: +5.3% ✅ ospathsplitdrive_aspectTime: ✅ 3.676µs (SLO: <10.000µs 📉 -63.2%) vs baseline: +0.2% Memory: ✅ 38.614MB (SLO: <41.000MB -5.8%) vs baseline: +5.0% ✅ ospathsplitdrive_noaspectTime: ✅ 0.707µs (SLO: <10.000µs 📉 -92.9%) vs baseline: +0.4% Memory: ✅ 38.594MB (SLO: <41.000MB -5.9%) vs baseline: +4.9% ✅ ospathsplitext_aspectTime: ✅ 4.577µs (SLO: <10.000µs 📉 -54.2%) vs baseline: +0.9% Memory: ✅ 38.496MB (SLO: <41.000MB -6.1%) vs baseline: +4.4% ✅ ospathsplitext_noaspectTime: ✅ 1.386µs (SLO: <10.000µs 📉 -86.1%) vs baseline: +0.2% Memory: ✅ 38.535MB (SLO: <41.000MB -6.0%) vs baseline: +4.8% 📈 telemetryaddmetric - 30/30✅ 1-count-metric-1-timesTime: ✅ 3.356µs (SLO: <20.000µs 📉 -83.2%) vs baseline: 📈 +15.9% Memory: ✅ 34.996MB (SLO: <35.500MB 🟡 -1.4%) vs baseline: +4.5% ✅ 1-count-metrics-100-timesTime: ✅ 198.860µs (SLO: <220.000µs -9.6%) vs baseline: -1.3% Memory: ✅ 34.898MB (SLO: <35.500MB 🟡 -1.7%) vs baseline: +4.2% ✅ 1-distribution-metric-1-timesTime: ✅ 3.200µs (SLO: <20.000µs 📉 -84.0%) vs baseline: -0.7% Memory: ✅ 34.937MB (SLO: <35.500MB 🟡 -1.6%) vs baseline: +4.6% ✅ 1-distribution-metrics-100-timesTime: ✅ 212.974µs (SLO: <230.000µs -7.4%) vs baseline: -1.5% Memory: ✅ 35.036MB (SLO: <35.500MB 🟡 -1.3%) vs baseline: +4.9% ✅ 1-gauge-metric-1-timesTime: ✅ 2.195µs (SLO: <20.000µs 📉 -89.0%) vs baseline: ~same Memory: ✅ 34.957MB (SLO: <35.500MB 🟡 -1.5%) vs baseline: +4.5% ✅ 1-gauge-metrics-100-timesTime: ✅ 139.328µs (SLO: <150.000µs -7.1%) vs baseline: +0.8% Memory: ✅ 34.898MB (SLO: <35.500MB 🟡 -1.7%) vs baseline: +4.5% ✅ 1-rate-metric-1-timesTime: ✅ 3.068µs (SLO: <20.000µs 📉 -84.7%) vs baseline: +0.9% Memory: ✅ 35.036MB (SLO: <35.500MB 🟡 -1.3%) vs baseline: +5.6% ✅ 1-rate-metrics-100-timesTime: ✅ 213.237µs (SLO: <250.000µs 📉 -14.7%) vs baseline: +0.4% Memory: ✅ 35.055MB (SLO: <35.500MB 🟡 -1.3%) vs baseline: +4.8% ✅ 100-count-metrics-100-timesTime: ✅ 20.145ms (SLO: <22.000ms -8.4%) vs baseline: ~same Memory: ✅ 34.701MB (SLO: <35.500MB -2.2%) vs baseline: +4.7% ✅ 100-distribution-metrics-100-timesTime: ✅ 2.266ms (SLO: <2.550ms 📉 -11.1%) vs baseline: +0.8% Memory: ✅ 34.780MB (SLO: <35.500MB -2.0%) vs baseline: +4.0% ✅ 100-gauge-metrics-100-timesTime: ✅ 1.438ms (SLO: <1.550ms -7.2%) vs baseline: +0.4% Memory: ✅ 34.741MB (SLO: <35.500MB -2.1%) vs baseline: +5.0% ✅ 100-rate-metrics-100-timesTime: ✅ 2.204ms (SLO: <2.550ms 📉 -13.5%) vs baseline: +0.6% Memory: ✅ 34.721MB (SLO: <35.500MB -2.2%) vs baseline: +4.8% ✅ flush-1-metricTime: ✅ 4.486µs (SLO: <20.000µs 📉 -77.6%) vs baseline: ~same Memory: ✅ 35.055MB (SLO: <35.500MB 🟡 -1.3%) vs baseline: +4.8% ✅ flush-100-metricsTime: ✅ 174.611µs (SLO: <250.000µs 📉 -30.2%) vs baseline: +0.6% Memory: ✅ 35.173MB (SLO: <35.500MB 🟡 -0.9%) vs baseline: +5.0% ✅ flush-1000-metricsTime: ✅ 2.163ms (SLO: <2.500ms 📉 -13.5%) vs baseline: -0.8% Memory: ✅ 35.861MB (SLO: <36.500MB 🟡 -1.7%) vs baseline: +4.7% 🟡 Near SLO Breach (12 suites)🟡 djangosimple - 30/30✅ appsecTime: ✅ 19.638ms (SLO: <22.300ms 📉 -11.9%) vs baseline: ~same Memory: ✅ 68.144MB (SLO: <70.500MB -3.3%) vs baseline: +4.8% ✅ exception-replay-enabledTime: ✅ 1.360ms (SLO: <1.450ms -6.2%) vs baseline: ~same Memory: ✅ 66.315MB (SLO: <67.500MB 🟡 -1.8%) vs baseline: +4.9% ✅ iastTime: ✅ 19.640ms (SLO: <22.250ms 📉 -11.7%) vs baseline: +0.4% Memory: ✅ 68.243MB (SLO: <70.000MB -2.5%) vs baseline: +5.1% ✅ profilerTime: ✅ 15.500ms (SLO: <16.550ms -6.3%) vs baseline: ~same Memory: ✅ 56.319MB (SLO: <57.500MB -2.1%) vs baseline: +4.6% ✅ resource-renamingTime: ✅ 19.505ms (SLO: <21.750ms 📉 -10.3%) vs baseline: ~same Memory: ✅ 68.144MB (SLO: <70.500MB -3.3%) vs baseline: +4.8% ✅ span-code-originTime: ✅ 19.882ms (SLO: <28.200ms 📉 -29.5%) vs baseline: +0.7% Memory: ✅ 68.178MB (SLO: <71.000MB -4.0%) vs baseline: +5.0% ✅ tracerTime: ✅ 19.589ms (SLO: <21.750ms -9.9%) vs baseline: +0.3% Memory: ✅ 68.203MB (SLO: <70.000MB -2.6%) vs baseline: +4.8% ✅ tracer-and-profilerTime: ✅ 21.712ms (SLO: <23.500ms -7.6%) vs baseline: ~same Memory: ✅ 69.255MB (SLO: <71.000MB -2.5%) vs baseline: +4.8% ✅ tracer-dont-create-db-spansTime: ✅ 19.682ms (SLO: <21.500ms -8.5%) vs baseline: -0.1% Memory: ✅ 68.223MB (SLO: <70.000MB -2.5%) vs baseline: +5.0% ✅ tracer-minimalTime: ✅ 16.824ms (SLO: <17.500ms -3.9%) vs baseline: +0.4% Memory: ✅ 67.790MB (SLO: <70.000MB -3.2%) vs baseline: +4.7% ✅ tracer-nativeTime: ✅ 19.476ms (SLO: <21.750ms 📉 -10.5%) vs baseline: -0.4% Memory: ✅ 68.223MB (SLO: <72.500MB -5.9%) vs baseline: +4.9% ✅ tracer-no-cachesTime: ✅ 17.695ms (SLO: <19.650ms -10.0%) vs baseline: +0.8% Memory: ✅ 67.948MB (SLO: <70.000MB -2.9%) vs baseline: +4.5% ✅ tracer-no-databasesTime: ✅ 19.121ms (SLO: <20.100ms -4.9%) vs baseline: +0.2% Memory: ✅ 67.889MB (SLO: <70.000MB -3.0%) vs baseline: +5.0% ✅ tracer-no-middlewareTime: ✅ 19.335ms (SLO: <21.500ms 📉 -10.1%) vs baseline: +0.7% Memory: ✅ 68.164MB (SLO: <70.000MB -2.6%) vs baseline: +4.8% ✅ tracer-no-templatesTime: ✅ 19.578ms (SLO: <22.000ms 📉 -11.0%) vs baseline: +1.1% Memory: ✅ 68.203MB (SLO: <70.500MB -3.3%) vs baseline: +4.9% 🟡 errortrackingdjangosimple - 6/6✅ errortracking-enabled-allTime: ✅ 16.306ms (SLO: <19.850ms 📉 -17.9%) vs baseline: ~same Memory: ✅ 69.868MB (SLO: <70.000MB 🟡 -0.2%) vs baseline: +4.9% ✅ errortracking-enabled-userTime: ✅ 16.306ms (SLO: <19.400ms 📉 -15.9%) vs baseline: ~same Memory: ✅ 69.776MB (SLO: <70.000MB 🟡 -0.3%) vs baseline: +4.8% ✅ tracer-enabledTime: ✅ 16.424ms (SLO: <19.450ms 📉 -15.6%) vs baseline: +0.3% Memory: ✅ 69.855MB (SLO: <70.000MB 🟡 -0.2%) vs baseline: +5.0% 🟡 errortrackingflasksqli - 6/6✅ errortracking-enabled-allTime: ✅ 2.066ms (SLO: <2.300ms 📉 -10.2%) vs baseline: ~same Memory: ✅ 55.738MB (SLO: <56.500MB 🟡 -1.3%) vs baseline: +4.9% ✅ errortracking-enabled-userTime: ✅ 2.074ms (SLO: <2.250ms -7.8%) vs baseline: -0.2% Memory: ✅ 55.778MB (SLO: <56.500MB 🟡 -1.3%) vs baseline: +5.0% ✅ tracer-enabledTime: ✅ 2.066ms (SLO: <2.300ms 📉 -10.2%) vs baseline: ~same Memory: ✅ 55.778MB (SLO: <56.500MB 🟡 -1.3%) vs baseline: +4.9% 🟡 flasksimple - 18/18✅ appsec-getTime: ✅ 3.368ms (SLO: <4.750ms 📉 -29.1%) vs baseline: -0.4% Memory: ✅ 55.386MB (SLO: <66.500MB 📉 -16.7%) vs baseline: +4.8% ✅ appsec-postTime: ✅ 2.858ms (SLO: <6.750ms 📉 -57.7%) vs baseline: +0.2% Memory: ✅ 55.740MB (SLO: <66.500MB 📉 -16.2%) vs baseline: +4.8% ✅ appsec-telemetryTime: ✅ 3.395ms (SLO: <4.750ms 📉 -28.5%) vs baseline: +0.7% Memory: ✅ 55.472MB (SLO: <66.500MB 📉 -16.6%) vs baseline: +5.0% ✅ debuggerTime: ✅ 1.869ms (SLO: <2.000ms -6.5%) vs baseline: +0.1% Memory: ✅ 47.918MB (SLO: <49.500MB -3.2%) vs baseline: +5.0% ✅ iast-getTime: ✅ 1.855ms (SLO: <2.000ms -7.2%) vs baseline: ~same Memory: ✅ 44.517MB (SLO: <49.000MB -9.1%) vs baseline: +4.7% ✅ profilerTime: ✅ 1.906ms (SLO: <2.100ms -9.2%) vs baseline: ~same Memory: ✅ 48.782MB (SLO: <50.000MB -2.4%) vs baseline: +4.7% ✅ resource-renamingTime: ✅ 3.360ms (SLO: <3.650ms -7.9%) vs baseline: +0.4% Memory: ✅ 55.353MB (SLO: <56.000MB 🟡 -1.2%) vs baseline: +4.7% ✅ tracerTime: ✅ 3.373ms (SLO: <3.650ms -7.6%) vs baseline: ~same Memory: ✅ 55.449MB (SLO: <56.500MB 🟡 -1.9%) vs baseline: +5.0% ✅ tracer-nativeTime: ✅ 3.370ms (SLO: <3.650ms -7.7%) vs baseline: ~same Memory: ✅ 55.404MB (SLO: <60.000MB -7.7%) vs baseline: +4.7% 🟡 flasksqli - 6/6✅ appsec-enabledTime: ✅ 2.059ms (SLO: <4.200ms 📉 -51.0%) vs baseline: +0.1% Memory: ✅ 55.758MB (SLO: <66.000MB 📉 -15.5%) vs baseline: +4.9% ✅ iast-enabledTime: ✅ 2.070ms (SLO: <2.800ms 📉 -26.1%) vs baseline: +0.2% Memory: ✅ 55.778MB (SLO: <62.500MB 📉 -10.8%) vs baseline: +4.8% ✅ tracer-enabledTime: ✅ 2.058ms (SLO: <2.250ms -8.5%) vs baseline: ~same Memory: ✅ 55.778MB (SLO: <56.500MB 🟡 -1.3%) vs baseline: +4.8% 🟡 httppropagationextract - 60/60✅ all_styles_all_headersTime: ✅ 81.149µs (SLO: <100.000µs 📉 -18.9%) vs baseline: -0.6% Memory: ✅ 34.760MB (SLO: <35.500MB -2.1%) vs baseline: +4.4% ✅ b3_headersTime: ✅ 14.164µs (SLO: <20.000µs 📉 -29.2%) vs baseline: +0.3% Memory: ✅ 34.819MB (SLO: <35.500MB 🟡 -1.9%) vs baseline: +4.6% ✅ b3_single_headersTime: ✅ 13.247µs (SLO: <20.000µs 📉 -33.8%) vs baseline: -0.4% Memory: ✅ 34.859MB (SLO: <35.500MB 🟡 -1.8%) vs baseline: +4.9% ✅ datadog_tracecontext_tracestate_not_propagated_on_trace_id_no_matchTime: ✅ 63.851µs (SLO: <80.000µs 📉 -20.2%) vs baseline: +0.3% Memory: ✅ 34.839MB (SLO: <35.500MB 🟡 -1.9%) vs baseline: +4.8% ✅ datadog_tracecontext_tracestate_propagated_on_trace_id_matchTime: ✅ 66.265µs (SLO: <80.000µs 📉 -17.2%) vs baseline: +0.7% Memory: ✅ 34.839MB (SLO: <35.500MB 🟡 -1.9%) vs baseline: +5.0% ✅ empty_headersTime: ✅ 1.630µs (SLO: <10.000µs 📉 -83.7%) vs baseline: +1.5% Memory: ✅ 34.780MB (SLO: <35.500MB -2.0%) vs baseline: +4.3% ✅ full_t_id_datadog_headersTime: ✅ 22.549µs (SLO: <30.000µs 📉 -24.8%) vs baseline: +0.2% Memory: ✅ 34.800MB (SLO: <35.500MB 🟡 -2.0%) vs baseline: +4.7% ✅ invalid_priority_headerTime: ✅ 6.528µs (SLO: <10.000µs 📉 -34.7%) vs baseline: +0.2% Memory: ✅ 34.800MB (SLO: <35.500MB 🟡 -2.0%) vs baseline: +4.7% ✅ invalid_span_id_headerTime: ✅ 6.542µs (SLO: <10.000µs 📉 -34.6%) vs baseline: +0.8% Memory: ✅ 34.839MB (SLO: <35.500MB 🟡 -1.9%) vs baseline: +4.7% ✅ invalid_tags_headerTime: ✅ 6.516µs (SLO: <10.000µs 📉 -34.8%) vs baseline: ~same Memory: ✅ 34.859MB (SLO: <35.500MB 🟡 -1.8%) vs baseline: +5.0% ✅ invalid_trace_id_headerTime: ✅ 6.531µs (SLO: <10.000µs 📉 -34.7%) vs baseline: +0.5% Memory: ✅ 34.800MB (SLO: <35.500MB 🟡 -2.0%) vs baseline: +4.7% ✅ large_header_no_matchesTime: ✅ 27.667µs (SLO: <30.000µs -7.8%) vs baseline: -0.2% Memory: ✅ 34.859MB (SLO: <35.500MB 🟡 -1.8%) vs baseline: +4.8% ✅ large_valid_headers_allTime: ✅ 28.718µs (SLO: <40.000µs 📉 -28.2%) vs baseline: -0.4% Memory: ✅ 34.760MB (SLO: <35.500MB -2.1%) vs baseline: +4.7% ✅ medium_header_no_matchesTime: ✅ 9.886µs (SLO: <20.000µs 📉 -50.6%) vs baseline: -0.3% Memory: ✅ 34.957MB (SLO: <35.500MB 🟡 -1.5%) vs baseline: +5.2% ✅ medium_valid_headers_allTime: ✅ 11.364µs (SLO: <20.000µs 📉 -43.2%) vs baseline: +0.6% Memory: ✅ 34.741MB (SLO: <35.500MB -2.1%) vs baseline: +4.0% ✅ none_propagation_styleTime: ✅ 1.743µs (SLO: <10.000µs 📉 -82.6%) vs baseline: +2.0% Memory: ✅ 34.839MB (SLO: <35.500MB 🟡 -1.9%) vs baseline: +4.9% ✅ tracecontext_headersTime: ✅ 34.850µs (SLO: <40.000µs 📉 -12.9%) vs baseline: +0.2% Memory: ✅ 34.839MB (SLO: <35.500MB 🟡 -1.9%) vs baseline: +4.7% ✅ valid_headers_allTime: ✅ 6.539µs (SLO: <10.000µs 📉 -34.6%) vs baseline: +0.7% Memory: ✅ 34.741MB (SLO: <35.500MB -2.1%) vs baseline: +4.7% ✅ valid_headers_basicTime: ✅ 6.079µs (SLO: <10.000µs 📉 -39.2%) vs baseline: -0.4% Memory: ✅ 34.760MB (SLO: <35.500MB -2.1%) vs baseline: +4.6% ✅ wsgi_empty_headersTime: ✅ 1.611µs (SLO: <10.000µs 📉 -83.9%) vs baseline: -0.4% Memory: ✅ 34.839MB (SLO: <35.500MB 🟡 -1.9%) vs baseline: +5.0% ✅ wsgi_invalid_priority_headerTime: ✅ 6.585µs (SLO: <10.000µs 📉 -34.1%) vs baseline: +0.2% Memory: ✅ 34.819MB (SLO: <35.500MB 🟡 -1.9%) vs baseline: +4.9% ✅ wsgi_invalid_span_id_headerTime: ✅ 1.614µs (SLO: <10.000µs 📉 -83.9%) vs baseline: +0.4% Memory: ✅ 34.878MB (SLO: <35.500MB 🟡 -1.8%) vs baseline: +5.0% ✅ wsgi_invalid_tags_headerTime: ✅ 6.554µs (SLO: <10.000µs 📉 -34.5%) vs baseline: -0.5% Memory: ✅ 34.780MB (SLO: <35.500MB -2.0%) vs baseline: +4.7% ✅ wsgi_invalid_trace_id_headerTime: ✅ 6.623µs (SLO: <10.000µs 📉 -33.8%) vs baseline: +1.9% Memory: ✅ 34.780MB (SLO: <35.500MB -2.0%) vs baseline: +4.3% ✅ wsgi_large_header_no_matchesTime: ✅ 28.753µs (SLO: <40.000µs 📉 -28.1%) vs baseline: -0.3% Memory: ✅ 35.016MB (SLO: <35.500MB 🟡 -1.4%) vs baseline: +5.6% ✅ wsgi_large_valid_headers_allTime: ✅ 29.871µs (SLO: <40.000µs 📉 -25.3%) vs baseline: +0.3% Memory: ✅ 34.957MB (SLO: <35.500MB 🟡 -1.5%) vs baseline: +5.2% ✅ wsgi_medium_header_no_matchesTime: ✅ 10.158µs (SLO: <20.000µs 📉 -49.2%) vs baseline: -0.5% Memory: ✅ 34.918MB (SLO: <35.500MB 🟡 -1.6%) vs baseline: +5.2% ✅ wsgi_medium_valid_headers_allTime: ✅ 11.651µs (SLO: <20.000µs 📉 -41.7%) vs baseline: -0.7% Memory: ✅ 34.780MB (SLO: <35.500MB -2.0%) vs baseline: +4.6% ✅ wsgi_valid_headers_allTime: ✅ 6.531µs (SLO: <10.000µs 📉 -34.7%) vs baseline: -0.7% Memory: ✅ 34.819MB (SLO: <35.500MB 🟡 -1.9%) vs baseline: +4.5% ✅ wsgi_valid_headers_basicTime: ✅ 6.138µs (SLO: <10.000µs 📉 -38.6%) vs baseline: +0.4% Memory: ✅ 34.819MB (SLO: <35.500MB 🟡 -1.9%) vs baseline: +4.9% 🟡 httppropagationinject - 16/16✅ ids_onlyTime: ✅ 22.163µs (SLO: <30.000µs 📉 -26.1%) vs baseline: +5.4% Memory: ✅ 34.859MB (SLO: <35.500MB 🟡 -1.8%) vs baseline: +5.0% ✅ with_allTime: ✅ 27.801µs (SLO: <40.000µs 📉 -30.5%) vs baseline: ~same Memory: ✅ 34.800MB (SLO: <35.500MB 🟡 -2.0%) vs baseline: +4.8% ✅ with_dd_originTime: ✅ 24.730µs (SLO: <30.000µs 📉 -17.6%) vs baseline: +0.3% Memory: ✅ 34.800MB (SLO: <35.500MB 🟡 -2.0%) vs baseline: +4.9% ✅ with_priority_and_originTime: ✅ 24.072µs (SLO: <40.000µs 📉 -39.8%) vs baseline: +0.6% Memory: ✅ 34.780MB (SLO: <35.500MB -2.0%) vs baseline: +4.6% ✅ with_sampling_priorityTime: ✅ 21.073µs (SLO: <30.000µs 📉 -29.8%) vs baseline: +1.6% Memory: ✅ 35.016MB (SLO: <35.500MB 🟡 -1.4%) vs baseline: +5.7% ✅ with_tagsTime: ✅ 25.988µs (SLO: <40.000µs 📉 -35.0%) vs baseline: +0.2% Memory: ✅ 34.898MB (SLO: <35.500MB 🟡 -1.7%) vs baseline: +5.3% ✅ with_tags_invalidTime: ✅ 27.267µs (SLO: <40.000µs 📉 -31.8%) vs baseline: -0.7% Memory: ✅ 34.780MB (SLO: <35.500MB -2.0%) vs baseline: +4.7% ✅ with_tags_max_sizeTime: ✅ 26.379µs (SLO: <40.000µs 📉 -34.1%) vs baseline: ~same Memory: ✅ 34.859MB (SLO: <35.500MB 🟡 -1.8%) vs baseline: +4.7% 🟡 otelspan - 22/22✅ add-eventTime: ✅ 40.340ms (SLO: <47.150ms 📉 -14.4%) vs baseline: +0.2% Memory: ✅ 39.425MB (SLO: <47.000MB 📉 -16.1%) vs baseline: +4.8% ✅ add-metricsTime: ✅ 260.196ms (SLO: <344.800ms 📉 -24.5%) vs baseline: -0.6% Memory: ✅ 43.875MB (SLO: <47.500MB -7.6%) vs baseline: +4.7% ✅ add-tagsTime: ✅ 316.536ms (SLO: <321.000ms 🟡 -1.4%) vs baseline: -1.0% Memory: ✅ 43.717MB (SLO: <47.500MB -8.0%) vs baseline: +5.2% ✅ get-contextTime: ✅ 80.400ms (SLO: <92.350ms 📉 -12.9%) vs baseline: ~same Memory: ✅ 39.838MB (SLO: <46.500MB 📉 -14.3%) vs baseline: +4.9% ✅ is-recordingTime: ✅ 37.985ms (SLO: <44.500ms 📉 -14.6%) vs baseline: ~same Memory: ✅ 39.494MB (SLO: <47.500MB 📉 -16.9%) vs baseline: +5.0% ✅ record-exceptionTime: ✅ 59.107ms (SLO: <67.650ms 📉 -12.6%) vs baseline: +0.3% Memory: ✅ 40.029MB (SLO: <47.000MB 📉 -14.8%) vs baseline: +4.8% ✅ set-statusTime: ✅ 44.357ms (SLO: <50.400ms 📉 -12.0%) vs baseline: +0.6% Memory: ✅ 39.480MB (SLO: <47.000MB 📉 -16.0%) vs baseline: +5.1% ✅ startTime: ✅ 38.244ms (SLO: <43.450ms 📉 -12.0%) vs baseline: +2.7% Memory: ✅ 39.504MB (SLO: <47.000MB 📉 -15.9%) vs baseline: +4.8% ✅ start-finishTime: ✅ 82.977ms (SLO: <88.000ms -5.7%) vs baseline: +0.3% Memory: ✅ 37.336MB (SLO: <46.500MB 📉 -19.7%) vs baseline: +5.0% ✅ start-finish-telemetryTime: ✅ 84.262ms (SLO: <89.000ms -5.3%) vs baseline: -0.3% Memory: ✅ 37.316MB (SLO: <46.500MB 📉 -19.8%) vs baseline: +4.6% ✅ update-nameTime: ✅ 38.616ms (SLO: <45.150ms 📉 -14.5%) vs baseline: -0.3% Memory: ✅ 39.601MB (SLO: <47.000MB 📉 -15.7%) vs baseline: +4.8% 🟡 ratelimiter - 12/12✅ defaultsTime: ✅ 2.362µs (SLO: <10.000µs 📉 -76.4%) vs baseline: +1.0% Memory: ✅ 35.036MB (SLO: <35.500MB 🟡 -1.3%) vs baseline: +4.6% ✅ high_rate_limitTime: ✅ 2.430µs (SLO: <10.000µs 📉 -75.7%) vs baseline: +0.2% Memory: ✅ 35.173MB (SLO: <35.500MB 🟡 -0.9%) vs baseline: +4.9% ✅ long_windowTime: ✅ 2.344µs (SLO: <10.000µs 📉 -76.6%) vs baseline: -1.4% Memory: ✅ 35.075MB (SLO: <35.500MB 🟡 -1.2%) vs baseline: +4.6% ✅ low_rate_limitTime: ✅ 2.356µs (SLO: <10.000µs 📉 -76.4%) vs baseline: -0.2% Memory: ✅ 35.036MB (SLO: <35.500MB 🟡 -1.3%) vs baseline: +4.6% ✅ no_rate_limitTime: ✅ 0.826µs (SLO: <10.000µs 📉 -91.7%) vs baseline: ~same Memory: ✅ 35.095MB (SLO: <35.500MB 🟡 -1.1%) vs baseline: +4.9% ✅ short_windowTime: ✅ 2.513µs (SLO: <10.000µs 📉 -74.9%) vs baseline: +0.2% Memory: ✅ 34.878MB (SLO: <35.500MB 🟡 -1.8%) vs baseline: +4.1% 🟡 recursivecomputation - 8/8✅ deepTime: ✅ 309.074ms (SLO: <320.950ms -3.7%) vs baseline: +0.2% Memory: ✅ 35.940MB (SLO: <36.500MB 🟡 -1.5%) vs baseline: +4.9% ✅ deep-profiledTime: ✅ 328.200ms (SLO: <359.150ms -8.6%) vs baseline: ~same Memory: ✅ 39.813MB (SLO: <40.500MB 🟡 -1.7%) vs baseline: +5.0% ✅ mediumTime: ✅ 7.014ms (SLO: <7.400ms -5.2%) vs baseline: +0.2% Memory: ✅ 34.701MB (SLO: <35.500MB -2.2%) vs baseline: +4.6% ✅ shallowTime: ✅ 0.947ms (SLO: <1.050ms -9.8%) vs baseline: +1.3% Memory: ✅ 34.721MB (SLO: <35.500MB -2.2%) vs baseline: +4.6% 🟡 sethttpmeta - 32/32✅ all-disabledTime: ✅ 10.587µs (SLO: <20.000µs 📉 -47.1%) vs baseline: +0.8% Memory: ✅ 35.684MB (SLO: <36.000MB 🟡 -0.9%) vs baseline: +4.7% ✅ all-enabledTime: ✅ 40.986µs (SLO: <50.000µs 📉 -18.0%) vs baseline: +1.9% Memory: ✅ 35.665MB (SLO: <36.000MB 🟡 -0.9%) vs baseline: +5.2% ✅ collectipvariant_existsTime: ✅ 40.952µs (SLO: <50.000µs 📉 -18.1%) vs baseline: ~same Memory: ✅ 35.743MB (SLO: <36.000MB 🟡 -0.7%) vs baseline: +5.1% ✅ no-collectipvariantTime: ✅ 40.150µs (SLO: <50.000µs 📉 -19.7%) vs baseline: +0.4% Memory: ✅ 35.645MB (SLO: <36.000MB 🟡 -1.0%) vs baseline: +4.9% ✅ no-useragentvariantTime: ✅ 38.988µs (SLO: <50.000µs 📉 -22.0%) vs baseline: +0.1% Memory: ✅ 35.586MB (SLO: <36.000MB 🟡 -1.1%) vs baseline: +4.8% ✅ obfuscation-no-queryTime: ✅ 40.636µs (SLO: <50.000µs 📉 -18.7%) vs baseline: -0.2% Memory: ✅ 35.743MB (SLO: <36.000MB 🟡 -0.7%) vs baseline: +5.1% ✅ obfuscation-regular-case-explicit-queryTime: ✅ 76.088µs (SLO: <90.000µs 📉 -15.5%) vs baseline: +0.4% Memory: ✅ 35.586MB (SLO: <36.500MB -2.5%) vs baseline: +4.9% ✅ obfuscation-regular-case-implicit-queryTime: ✅ 76.543µs (SLO: <90.000µs 📉 -15.0%) vs baseline: +0.2% Memory: ✅ 35.684MB (SLO: <36.500MB -2.2%) vs baseline: +4.9% ✅ obfuscation-send-querystring-disabledTime: ✅ 154.493µs (SLO: <170.000µs -9.1%) vs baseline: ~same Memory: ✅ 35.684MB (SLO: <36.500MB -2.2%) vs baseline: +4.6% ✅ obfuscation-worst-case-explicit-queryTime: ✅ 149.033µs (SLO: <160.000µs -6.9%) vs baseline: ~same Memory: ✅ 35.645MB (SLO: <36.500MB -2.3%) vs baseline: +5.1% ✅ obfuscation-worst-case-implicit-queryTime: ✅ 155.287µs (SLO: <170.000µs -8.7%) vs baseline: +0.2% Memory: ✅ 35.625MB (SLO: <36.500MB -2.4%) vs baseline: +4.7% ✅ useragentvariant_exists_1Time: ✅ 39.629µs (SLO: <50.000µs 📉 -20.7%) vs baseline: ~same Memory: ✅ 35.743MB (SLO: <36.000MB 🟡 -0.7%) vs baseline: +5.0% ✅ useragentvariant_exists_2Time: ✅ 40.796µs (SLO: <50.000µs 📉 -18.4%) vs baseline: +0.5% Memory: ✅ 35.271MB (SLO: <36.000MB -2.0%) vs baseline: +3.8% ✅ useragentvariant_exists_3Time: ✅ 40.280µs (SLO: <50.000µs 📉 -19.4%) vs baseline: -0.2% Memory: ✅ 35.586MB (SLO: <36.000MB 🟡 -1.1%) vs baseline: +4.3% ✅ useragentvariant_not_exists_1Time: ✅ 39.744µs (SLO: <50.000µs 📉 -20.5%) vs baseline: +0.6% Memory: ✅ 35.783MB (SLO: <36.000MB 🟡 -0.6%) vs baseline: +5.1% ✅ useragentvariant_not_exists_2Time: ✅ 39.671µs (SLO: <50.000µs 📉 -20.7%) vs baseline: +0.1% Memory: ✅ 35.684MB (SLO: <36.000MB 🟡 -0.9%) vs baseline: +4.7% 🟡 tracer - 6/6✅ largeTime: ✅ 29.042ms (SLO: <32.950ms 📉 -11.9%) vs baseline: -0.4% Memory: ✅ 36.038MB (SLO: <36.500MB 🟡 -1.3%) vs baseline: +5.2% ✅ mediumTime: ✅ 2.877ms (SLO: <3.200ms 📉 -10.1%) vs baseline: -0.2% Memory: ✅ 34.780MB (SLO: <35.500MB -2.0%) vs baseline: +4.9% ✅ smallTime: ✅ 331.911µs (SLO: <370.000µs 📉 -10.3%) vs baseline: +1.7% Memory: ✅ 34.760MB (SLO: <35.500MB -2.1%) vs baseline: +4.7%
|
Signed-off-by: Juanjo Alvarez <[email protected]>
…/DataDog/dd-trace-py into juanjux/http-writer-ensure-reset
Signed-off-by: Juanjo Alvarez <[email protected]>
…/DataDog/dd-trace-py into juanjux/http-writer-ensure-reset
emmettbutler
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is such a common code path that I'm surprised this bug could stick around so long.
Description
Previously, the http writer was calling
from_http_responsein theelseblock of the exception handler that does the request, set's the log level, et cetera. However this could have the problem offrom_http_responseitself raising an exception (e.g.http.client.IncompleteReadas seen on dogweb staging recently) outside of theExceptionhandler, which would leave theHTTPWriterobject in need of a call to_reset; thefinallywould call_resetbut only ifreuse_connectionakaDD_TRACE_WRITER_REUSE_CONNECTIONSwas enabled, which is not the default.Testing
New tests have been added.
Risks
Additional Notes