-
Notifications
You must be signed in to change notification settings - Fork 462
chore(core): deprecate core.dispatch_with_results #14915
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?
chore(core): deprecate core.dispatch_with_results #14915
Conversation
|
Bootstrap import analysisComparison of import times between this PR and base. SummaryThe average import time from this PR is: 241 ± 4 ms. The average import time from base is: 250 ± 10 ms. The import time difference between this PR and base is: -10.2 ± 0.4 ms. Import time breakdownThe following import paths have shrunk:
|
Performance SLOsComparing candidate brettlangdon/deprecate.core.dispatch_with_results (995ccaa) with baseline main (5a3d6bd) 📈 Performance Regressions (2 suites)📈 iastaspects - 118/118✅ add_aspectTime: ✅ 0.405µs (SLO: <10.000µs 📉 -96.0%) vs baseline: -0.3% Memory: ✅ 37.611MB (SLO: <39.000MB -3.6%) vs baseline: +4.6% ✅ add_inplace_aspectTime: ✅ 0.414µs (SLO: <10.000µs 📉 -95.9%) vs baseline: +2.0% Memory: ✅ 37.670MB (SLO: <39.000MB -3.4%) vs baseline: +4.6% ✅ add_inplace_noaspectTime: ✅ 0.317µs (SLO: <10.000µs 📉 -96.8%) vs baseline: ~same Memory: ✅ 37.670MB (SLO: <39.000MB -3.4%) vs baseline: +4.9% ✅ add_noaspectTime: ✅ 0.277µs (SLO: <10.000µs 📉 -97.2%) vs baseline: -0.8% Memory: ✅ 37.670MB (SLO: <39.000MB -3.4%) vs baseline: +4.7% ✅ bytearray_aspectTime: ✅ 1.332µs (SLO: <10.000µs 📉 -86.7%) vs baseline: +1.2% Memory: ✅ 37.631MB (SLO: <39.000MB -3.5%) vs baseline: +4.7% ✅ bytearray_extend_aspectTime: ✅ 1.442µs (SLO: <10.000µs 📉 -85.6%) vs baseline: -1.8% Memory: ✅ 37.650MB (SLO: <39.000MB -3.5%) vs baseline: +4.8% ✅ bytearray_extend_noaspectTime: ✅ 0.612µs (SLO: <10.000µs 📉 -93.9%) vs baseline: -1.3% Memory: ✅ 37.690MB (SLO: <39.000MB -3.4%) vs baseline: +4.9% ✅ bytearray_noaspectTime: ✅ 0.480µs (SLO: <10.000µs 📉 -95.2%) vs baseline: -1.4% Memory: ✅ 37.690MB (SLO: <39.000MB -3.4%) vs baseline: +5.1% ✅ bytes_aspectTime: ✅ 1.304µs (SLO: <10.000µs 📉 -87.0%) vs baseline: ~same Memory: ✅ 37.631MB (SLO: <39.000MB -3.5%) vs baseline: +4.6% ✅ bytes_noaspectTime: ✅ 0.490µs (SLO: <10.000µs 📉 -95.1%) vs baseline: ~same Memory: ✅ 37.670MB (SLO: <39.000MB -3.4%) vs baseline: +4.7% ✅ bytesio_aspectTime: ✅ 1.349µs (SLO: <10.000µs 📉 -86.5%) vs baseline: -1.2% Memory: ✅ 37.631MB (SLO: <39.000MB -3.5%) vs baseline: +4.7% ✅ bytesio_noaspectTime: ✅ 0.499µs (SLO: <10.000µs 📉 -95.0%) vs baseline: +0.6% Memory: ✅ 37.709MB (SLO: <39.000MB -3.3%) vs baseline: +4.9% ✅ capitalize_aspectTime: ✅ 0.732µs (SLO: <10.000µs 📉 -92.7%) vs baseline: +0.3% Memory: ✅ 37.690MB (SLO: <39.000MB -3.4%) vs baseline: +5.0% ✅ capitalize_noaspectTime: ✅ 0.438µs (SLO: <10.000µs 📉 -95.6%) vs baseline: +0.4% Memory: ✅ 37.749MB (SLO: <39.000MB -3.2%) vs baseline: +5.1% ✅ casefold_aspectTime: ✅ 0.732µs (SLO: <10.000µs 📉 -92.7%) vs baseline: -0.3% Memory: ✅ 37.690MB (SLO: <39.000MB -3.4%) vs baseline: +4.8% ✅ casefold_noaspectTime: ✅ 0.367µs (SLO: <10.000µs 📉 -96.3%) vs baseline: -1.7% Memory: ✅ 37.690MB (SLO: <39.000MB -3.4%) vs baseline: +4.9% ✅ decode_aspectTime: ✅ 0.724µs (SLO: <10.000µs 📉 -92.8%) vs baseline: -0.4% Memory: ✅ 37.709MB (SLO: <39.000MB -3.3%) vs baseline: +5.0% ✅ decode_noaspectTime: ✅ 0.429µs (SLO: <10.000µs 📉 -95.7%) vs baseline: +0.7% Memory: ✅ 37.729MB (SLO: <39.000MB -3.3%) vs baseline: +4.9% ✅ encode_aspectTime: ✅ 0.711µs (SLO: <10.000µs 📉 -92.9%) vs baseline: +0.2% Memory: ✅ 37.611MB (SLO: <39.000MB -3.6%) vs baseline: +4.6% ✅ encode_noaspectTime: ✅ 0.400µs (SLO: <10.000µs 📉 -96.0%) vs baseline: -0.5% Memory: ✅ 37.591MB (SLO: <39.000MB -3.6%) vs baseline: +4.6% ✅ format_aspectTime: ✅ 3.389µs (SLO: <10.000µs 📉 -66.1%) vs baseline: +1.0% Memory: ✅ 37.709MB (SLO: <39.000MB -3.3%) vs baseline: +5.0% ✅ format_map_aspectTime: ✅ 3.684µs (SLO: <10.000µs 📉 -63.2%) vs baseline: +1.3% Memory: ✅ 37.729MB (SLO: <39.000MB -3.3%) vs baseline: +5.1% ✅ format_map_noaspectTime: ✅ 0.775µs (SLO: <10.000µs 📉 -92.2%) vs baseline: -0.3% Memory: ✅ 37.690MB (SLO: <39.000MB -3.4%) vs baseline: +5.0% ✅ format_noaspectTime: ✅ 0.596µs (SLO: <10.000µs 📉 -94.0%) vs baseline: +0.5% Memory: ✅ 37.709MB (SLO: <39.000MB -3.3%) vs baseline: +4.9% ✅ index_aspectTime: ✅ 0.360µs (SLO: <10.000µs 📉 -96.4%) vs baseline: -0.5% Memory: ✅ 37.709MB (SLO: <39.000MB -3.3%) vs baseline: +5.1% ✅ index_noaspectTime: ✅ 0.278µs (SLO: <10.000µs 📉 -97.2%) vs baseline: -0.2% Memory: ✅ 37.709MB (SLO: <39.000MB -3.3%) vs baseline: +5.0% ✅ join_aspectTime: ✅ 1.406µs (SLO: <10.000µs 📉 -85.9%) vs baseline: +0.9% Memory: ✅ 37.690MB (SLO: <39.000MB -3.4%) vs baseline: +4.8% ✅ join_noaspectTime: ✅ 0.492µs (SLO: <10.000µs 📉 -95.1%) vs baseline: ~same Memory: ✅ 37.650MB (SLO: <39.000MB -3.5%) vs baseline: +4.9% ✅ ljust_aspectTime: ✅ 2.506µs (SLO: <20.000µs 📉 -87.5%) vs baseline: +0.7% Memory: ✅ 37.709MB (SLO: <39.000MB -3.3%) vs baseline: +5.0% ✅ ljust_noaspectTime: ✅ 0.404µs (SLO: <10.000µs 📉 -96.0%) vs baseline: -0.7% Memory: ✅ 37.650MB (SLO: <39.000MB -3.5%) vs baseline: +4.9% ✅ lower_aspectTime: ✅ 2.285µs (SLO: <10.000µs 📉 -77.1%) vs baseline: +3.1% Memory: ✅ 37.729MB (SLO: <39.000MB -3.3%) vs baseline: +4.9% ✅ lower_noaspectTime: ✅ 0.370µs (SLO: <10.000µs 📉 -96.3%) vs baseline: +0.5% Memory: ✅ 37.690MB (SLO: <39.000MB -3.4%) vs baseline: +4.9% ✅ lstrip_aspectTime: ✅ 2.228µs (SLO: <20.000µs 📉 -88.9%) vs baseline: -1.2% Memory: ✅ 37.709MB (SLO: <39.000MB -3.3%) vs baseline: +5.1% ✅ lstrip_noaspectTime: ✅ 0.389µs (SLO: <10.000µs 📉 -96.1%) vs baseline: +2.2% Memory: ✅ 37.650MB (SLO: <39.000MB -3.5%) vs baseline: +4.6% ✅ modulo_aspectTime: ✅ 1.002µs (SLO: <10.000µs 📉 -90.0%) vs baseline: -1.1% Memory: ✅ 37.690MB (SLO: <39.000MB -3.4%) vs baseline: +4.7% ✅ modulo_aspect_for_bytearray_bytearrayTime: ✅ 1.534µs (SLO: <10.000µs 📉 -84.7%) vs baseline: -0.3% Memory: ✅ 37.670MB (SLO: <39.000MB -3.4%) vs baseline: +4.9% ✅ modulo_aspect_for_bytesTime: ✅ 0.983µs (SLO: <10.000µs 📉 -90.2%) vs baseline: -0.4% Memory: ✅ 37.690MB (SLO: <39.000MB -3.4%) vs baseline: +5.0% ✅ modulo_aspect_for_bytes_bytearrayTime: ✅ 1.197µs (SLO: <10.000µs 📉 -88.0%) vs baseline: +0.5% Memory: ✅ 37.670MB (SLO: <39.000MB -3.4%) vs baseline: +4.8% ✅ modulo_noaspectTime: ✅ 0.630µs (SLO: <10.000µs 📉 -93.7%) vs baseline: -0.3% Memory: ✅ 37.729MB (SLO: <39.000MB -3.3%) vs baseline: +5.2% ✅ replace_aspectTime: ✅ 4.831µs (SLO: <10.000µs 📉 -51.7%) vs baseline: -0.4% Memory: ✅ 37.631MB (SLO: <39.000MB -3.5%) vs baseline: +4.7% ✅ replace_noaspectTime: ✅ 0.464µs (SLO: <10.000µs 📉 -95.4%) vs baseline: +0.6% Memory: ✅ 37.670MB (SLO: <39.000MB -3.4%) vs baseline: +5.0% ✅ repr_aspectTime: ✅ 0.915µs (SLO: <10.000µs 📉 -90.8%) vs baseline: +0.7% Memory: ✅ 37.631MB (SLO: <39.000MB -3.5%) vs baseline: +4.8% ✅ repr_noaspectTime: ✅ 0.413µs (SLO: <10.000µs 📉 -95.9%) vs baseline: +0.7% Memory: ✅ 37.690MB (SLO: <39.000MB -3.4%) vs baseline: +4.9% ✅ rstrip_aspectTime: ✅ 1.922µs (SLO: <20.000µs 📉 -90.4%) vs baseline: -0.8% Memory: ✅ 37.611MB (SLO: <39.000MB -3.6%) vs baseline: +4.9% ✅ rstrip_noaspectTime: ✅ 0.381µs (SLO: <10.000µs 📉 -96.2%) vs baseline: -0.6% Memory: ✅ 37.709MB (SLO: <39.000MB -3.3%) vs baseline: +5.2% ✅ slice_aspectTime: ✅ 0.496µs (SLO: <10.000µs 📉 -95.0%) vs baseline: +0.6% Memory: ✅ 37.670MB (SLO: <39.000MB -3.4%) vs baseline: +4.9% ✅ slice_noaspectTime: ✅ 0.453µs (SLO: <10.000µs 📉 -95.5%) vs baseline: +1.6% Memory: ✅ 37.709MB (SLO: <39.000MB -3.3%) vs baseline: +4.9% ✅ stringio_aspectTime: ✅ 1.718µs (SLO: <10.000µs 📉 -82.8%) vs baseline: 📈 +11.9% Memory: ✅ 37.650MB (SLO: <39.000MB -3.5%) vs baseline: +4.8% ✅ stringio_noaspectTime: ✅ 0.722µs (SLO: <10.000µs 📉 -92.8%) vs baseline: +0.8% Memory: ✅ 37.709MB (SLO: <39.000MB -3.3%) vs baseline: +5.1% ✅ strip_aspectTime: ✅ 2.254µs (SLO: <20.000µs 📉 -88.7%) vs baseline: +1.8% Memory: ✅ 37.650MB (SLO: <39.000MB -3.5%) vs baseline: +4.7% ✅ strip_noaspectTime: ✅ 0.387µs (SLO: <10.000µs 📉 -96.1%) vs baseline: -0.6% Memory: ✅ 37.650MB (SLO: <39.000MB -3.5%) vs baseline: +5.0% ✅ swapcase_aspectTime: ✅ 2.486µs (SLO: <10.000µs 📉 -75.1%) vs baseline: +3.3% Memory: ✅ 37.631MB (SLO: <39.000MB -3.5%) vs baseline: +4.8% ✅ swapcase_noaspectTime: ✅ 0.537µs (SLO: <10.000µs 📉 -94.6%) vs baseline: -0.3% Memory: ✅ 37.670MB (SLO: <39.000MB -3.4%) vs baseline: +5.0% ✅ title_aspectTime: ✅ 2.372µs (SLO: <10.000µs 📉 -76.3%) vs baseline: +0.7% Memory: ✅ 37.690MB (SLO: <39.000MB -3.4%) vs baseline: +4.9% ✅ title_noaspectTime: ✅ 0.502µs (SLO: <10.000µs 📉 -95.0%) vs baseline: -0.6% Memory: ✅ 37.709MB (SLO: <39.000MB -3.3%) vs baseline: +5.0% ✅ translate_aspectTime: ✅ 3.265µs (SLO: <10.000µs 📉 -67.3%) vs baseline: +1.2% Memory: ✅ 37.670MB (SLO: <39.000MB -3.4%) vs baseline: +4.8% ✅ translate_noaspectTime: ✅ 1.048µs (SLO: <10.000µs 📉 -89.5%) vs baseline: +0.6% Memory: ✅ 37.709MB (SLO: <39.000MB -3.3%) vs baseline: +4.9% ✅ upper_aspectTime: ✅ 2.250µs (SLO: <10.000µs 📉 -77.5%) vs baseline: -0.2% Memory: ✅ 37.690MB (SLO: <39.000MB -3.4%) vs baseline: +4.7% ✅ upper_noaspectTime: ✅ 0.366µs (SLO: <10.000µs 📉 -96.3%) vs baseline: -1.4% Memory: ✅ 37.729MB (SLO: <39.000MB -3.3%) vs baseline: +5.1% 📈 telemetryaddmetric - 30/30✅ 1-count-metric-1-timesTime: ✅ 3.139µs (SLO: <20.000µs 📉 -84.3%) vs baseline: +1.0% Memory: ✅ 32.145MB (SLO: <34.000MB -5.5%) vs baseline: +4.9% ✅ 1-count-metrics-100-timesTime: ✅ 214.888µs (SLO: <250.000µs 📉 -14.0%) vs baseline: +1.2% Memory: ✅ 32.145MB (SLO: <34.000MB -5.5%) vs baseline: +4.9% ✅ 1-distribution-metric-1-timesTime: ✅ 3.200µs (SLO: <20.000µs 📉 -84.0%) vs baseline: +9.1% Memory: ✅ 32.106MB (SLO: <34.000MB -5.6%) vs baseline: +4.8% ✅ 1-distribution-metrics-100-timesTime: ✅ 191.308µs (SLO: <220.000µs 📉 -13.0%) vs baseline: +0.5% Memory: ✅ 32.165MB (SLO: <34.000MB -5.4%) vs baseline: +4.9% ✅ 1-gauge-metric-1-timesTime: ✅ 2.329µs (SLO: <20.000µs 📉 -88.4%) vs baseline: 📈 +10.6% Memory: ✅ 32.106MB (SLO: <34.000MB -5.6%) vs baseline: +4.7% ✅ 1-gauge-metrics-100-timesTime: ✅ 126.405µs (SLO: <150.000µs 📉 -15.7%) vs baseline: +1.2% Memory: ✅ 32.086MB (SLO: <34.000MB -5.6%) vs baseline: +4.7% ✅ 1-rate-metric-1-timesTime: ✅ 3.132µs (SLO: <20.000µs 📉 -84.3%) vs baseline: +0.6% Memory: ✅ 32.086MB (SLO: <34.000MB -5.6%) vs baseline: +4.7% ✅ 1-rate-metrics-100-timesTime: ✅ 214.748µs (SLO: <250.000µs 📉 -14.1%) vs baseline: +1.3% Memory: ✅ 32.067MB (SLO: <34.000MB -5.7%) vs baseline: +4.7% ✅ 100-count-metrics-100-timesTime: ✅ 21.707ms (SLO: <23.500ms -7.6%) vs baseline: +1.8% Memory: ✅ 32.126MB (SLO: <34.000MB -5.5%) vs baseline: +5.1% ✅ 100-distribution-metrics-100-timesTime: ✅ 1.982ms (SLO: <2.250ms 📉 -11.9%) vs baseline: ~same Memory: ✅ 32.106MB (SLO: <34.000MB -5.6%) vs baseline: +4.7% ✅ 100-gauge-metrics-100-timesTime: ✅ 1.301ms (SLO: <1.550ms 📉 -16.1%) vs baseline: +0.4% Memory: ✅ 32.067MB (SLO: <34.000MB -5.7%) vs baseline: +4.5% ✅ 100-rate-metrics-100-timesTime: ✅ 2.212ms (SLO: <2.550ms 📉 -13.2%) vs baseline: +1.2% Memory: ✅ 32.145MB (SLO: <34.000MB -5.5%) vs baseline: +4.9% ✅ flush-1-metricTime: ✅ 4.456µs (SLO: <20.000µs 📉 -77.7%) vs baseline: +4.1% Memory: ✅ 32.126MB (SLO: <34.000MB -5.5%) vs baseline: +4.8% ✅ flush-100-metricsTime: ✅ 181.809µs (SLO: <250.000µs 📉 -27.3%) vs baseline: -0.5% Memory: ✅ 32.106MB (SLO: <34.000MB -5.6%) vs baseline: +4.8% ✅ flush-1000-metricsTime: ✅ 2.248ms (SLO: <2.500ms 📉 -10.1%) vs baseline: +1.4% Memory: ✅ 32.932MB (SLO: <34.500MB -4.5%) vs baseline: +4.7% 🟡 Near SLO Breach (5 suites)🟡 djangosimple - 30/30✅ appsecTime: ✅ 20.453ms (SLO: <22.300ms -8.3%) vs baseline: -0.3% Memory: ✅ 65.468MB (SLO: <67.000MB -2.3%) vs baseline: +4.7% ✅ exception-replay-enabledTime: ✅ 1.349ms (SLO: <1.450ms -7.0%) vs baseline: ~same Memory: ✅ 64.588MB (SLO: <67.000MB -3.6%) vs baseline: +4.7% ✅ iastTime: ✅ 20.454ms (SLO: <22.250ms -8.1%) vs baseline: +0.2% Memory: ✅ 65.476MB (SLO: <67.000MB -2.3%) vs baseline: +4.8% ✅ profilerTime: ✅ 15.272ms (SLO: <16.550ms -7.7%) vs baseline: ~same Memory: ✅ 53.808MB (SLO: <54.500MB 🟡 -1.3%) vs baseline: +4.9% ✅ resource-renamingTime: ✅ 20.536ms (SLO: <21.750ms -5.6%) vs baseline: ~same Memory: ✅ 65.380MB (SLO: <67.000MB -2.4%) vs baseline: +4.7% ✅ span-code-originTime: ✅ 26.161ms (SLO: <28.200ms -7.2%) vs baseline: -0.6% Memory: ✅ 67.645MB (SLO: <69.500MB -2.7%) vs baseline: +4.9% ✅ tracerTime: ✅ 20.476ms (SLO: <21.750ms -5.9%) vs baseline: +0.2% Memory: ✅ 65.546MB (SLO: <67.000MB -2.2%) vs baseline: +5.0% ✅ tracer-and-profilerTime: ✅ 21.976ms (SLO: <23.500ms -6.5%) vs baseline: -0.4% Memory: ✅ 66.597MB (SLO: <67.500MB 🟡 -1.3%) vs baseline: +4.9% ✅ tracer-dont-create-db-spansTime: ✅ 19.332ms (SLO: <21.500ms 📉 -10.1%) vs baseline: -0.1% Memory: ✅ 65.449MB (SLO: <66.000MB 🟡 -0.8%) vs baseline: +4.8% ✅ tracer-minimalTime: ✅ 16.610ms (SLO: <17.500ms -5.1%) vs baseline: ~same Memory: ✅ 65.485MB (SLO: <66.000MB 🟡 -0.8%) vs baseline: +4.9% ✅ tracer-nativeTime: ✅ 20.490ms (SLO: <21.750ms -5.8%) vs baseline: ~same Memory: ✅ 71.378MB (SLO: <72.500MB 🟡 -1.5%) vs baseline: +4.8% ✅ tracer-no-cachesTime: ✅ 18.441ms (SLO: <19.650ms -6.2%) vs baseline: -0.1% Memory: ✅ 65.450MB (SLO: <67.000MB -2.3%) vs baseline: +4.8% ✅ tracer-no-databasesTime: ✅ 18.739ms (SLO: <20.100ms -6.8%) vs baseline: -0.2% Memory: ✅ 65.296MB (SLO: <67.000MB -2.5%) vs baseline: +4.5% ✅ tracer-no-middlewareTime: ✅ 20.167ms (SLO: <21.500ms -6.2%) vs baseline: -0.1% Memory: ✅ 65.509MB (SLO: <67.000MB -2.2%) vs baseline: +5.0% ✅ tracer-no-templatesTime: ✅ 20.279ms (SLO: <22.000ms -7.8%) vs baseline: ~same Memory: ✅ 65.535MB (SLO: <67.000MB -2.2%) vs baseline: +4.9% 🟡 errortrackingdjangosimple - 6/6✅ errortracking-enabled-allTime: ✅ 18.187ms (SLO: <19.850ms -8.4%) vs baseline: +1.0% Memory: ✅ 65.176MB (SLO: <66.500MB 🟡 -2.0%) vs baseline: +4.8% ✅ errortracking-enabled-userTime: ✅ 18.135ms (SLO: <19.400ms -6.5%) vs baseline: +0.4% Memory: ✅ 65.313MB (SLO: <66.500MB 🟡 -1.8%) vs baseline: +5.0% ✅ tracer-enabledTime: ✅ 18.150ms (SLO: <19.450ms -6.7%) vs baseline: +0.4% Memory: ✅ 65.235MB (SLO: <66.500MB 🟡 -1.9%) vs baseline: +4.8% 🟡 flasksimple - 18/18✅ appsec-getTime: ✅ 4.562ms (SLO: <4.750ms -3.9%) vs baseline: +0.3% Memory: ✅ 61.951MB (SLO: <65.000MB -4.7%) vs baseline: +4.8% ✅ appsec-postTime: ✅ 6.571ms (SLO: <6.750ms -2.6%) vs baseline: +0.2% Memory: ✅ 61.991MB (SLO: <65.000MB -4.6%) vs baseline: +4.8% ✅ appsec-telemetryTime: ✅ 4.556ms (SLO: <4.750ms -4.1%) vs baseline: +0.2% Memory: ✅ 62.010MB (SLO: <65.000MB -4.6%) vs baseline: +5.0% ✅ debuggerTime: ✅ 1.856ms (SLO: <2.000ms -7.2%) vs baseline: ~same Memory: ✅ 45.495MB (SLO: <47.000MB -3.2%) vs baseline: +4.9% ✅ iast-getTime: ✅ 1.880ms (SLO: <2.000ms -6.0%) vs baseline: +1.2% Memory: ✅ 42.349MB (SLO: <49.000MB 📉 -13.6%) vs baseline: +4.9% ✅ profilerTime: ✅ 1.910ms (SLO: <2.100ms -9.0%) vs baseline: ~same Memory: ✅ 46.517MB (SLO: <47.000MB 🟡 -1.0%) vs baseline: +4.9% ✅ resource-renamingTime: ✅ 3.369ms (SLO: <3.650ms -7.7%) vs baseline: -0.1% Memory: ✅ 52.180MB (SLO: <53.500MB -2.5%) vs baseline: +4.7% ✅ tracerTime: ✅ 3.360ms (SLO: <3.650ms -7.9%) vs baseline: -0.3% Memory: ✅ 52.239MB (SLO: <53.500MB -2.4%) vs baseline: +4.8% ✅ tracer-nativeTime: ✅ 3.362ms (SLO: <3.650ms -7.9%) vs baseline: ~same Memory: ✅ 58.271MB (SLO: <60.000MB -2.9%) vs baseline: +5.0% 🟡 otelspan - 22/22✅ add-eventTime: ✅ 40.953ms (SLO: <47.150ms 📉 -13.1%) vs baseline: -0.3% Memory: ✅ 44.127MB (SLO: <47.000MB -6.1%) vs baseline: +4.8% ✅ add-metricsTime: ✅ 315.692ms (SLO: <344.800ms -8.4%) vs baseline: -0.9% Memory: ✅ 616.964MB (SLO: <630.000MB -2.1%) vs baseline: +4.9% ✅ add-tagsTime: ✅ 287.352ms (SLO: <314.000ms -8.5%) vs baseline: -0.1% Memory: ✅ 618.099MB (SLO: <630.000MB 🟡 -1.9%) vs baseline: +4.7% ✅ get-contextTime: ✅ 80.955ms (SLO: <92.350ms 📉 -12.3%) vs baseline: +0.3% Memory: ✅ 39.739MB (SLO: <46.500MB 📉 -14.5%) vs baseline: +4.9% ✅ is-recordingTime: ✅ 38.508ms (SLO: <44.500ms 📉 -13.5%) vs baseline: +0.7% Memory: ✅ 43.612MB (SLO: <47.500MB -8.2%) vs baseline: +5.0% ✅ record-exceptionTime: ✅ 59.454ms (SLO: <67.650ms 📉 -12.1%) vs baseline: +2.0% Memory: ✅ 40.082MB (SLO: <47.000MB 📉 -14.7%) vs baseline: +5.0% ✅ set-statusTime: ✅ 44.096ms (SLO: <50.400ms 📉 -12.5%) vs baseline: ~same Memory: ✅ 43.566MB (SLO: <47.000MB -7.3%) vs baseline: +4.9% ✅ startTime: ✅ 37.679ms (SLO: <43.450ms 📉 -13.3%) vs baseline: +0.6% Memory: ✅ 43.577MB (SLO: <47.000MB -7.3%) vs baseline: +4.9% ✅ start-finishTime: ✅ 82.651ms (SLO: <88.000ms -6.1%) vs baseline: -0.2% Memory: ✅ 34.564MB (SLO: <46.500MB 📉 -25.7%) vs baseline: +4.9% ✅ start-finish-telemetryTime: ✅ 84.142ms (SLO: <89.000ms -5.5%) vs baseline: ~same Memory: ✅ 34.564MB (SLO: <46.500MB 📉 -25.7%) vs baseline: +4.9% ✅ update-nameTime: ✅ 39.053ms (SLO: <45.150ms 📉 -13.5%) vs baseline: -0.7% Memory: ✅ 43.900MB (SLO: <47.000MB -6.6%) vs baseline: +4.7% 🟡 span - 26/26✅ add-eventTime: ✅ 20.843ms (SLO: <22.500ms -7.4%) vs baseline: +2.6% Memory: ✅ 49.685MB (SLO: <53.000MB -6.3%) vs baseline: +4.8% ✅ add-metricsTime: ✅ 91.179ms (SLO: <93.500ms -2.5%) vs baseline: +0.2% Memory: ✅ 690.356MB (SLO: <961.000MB 📉 -28.2%) vs baseline: +4.9% ✅ add-tagsTime: ✅ 147.757ms (SLO: <155.000ms -4.7%) vs baseline: -0.3% Memory: ✅ 689.386MB (SLO: <962.500MB 📉 -28.4%) vs baseline: +4.7% ✅ get-contextTime: ✅ 18.837ms (SLO: <20.500ms -8.1%) vs baseline: -0.5% Memory: ✅ 48.483MB (SLO: <53.000MB -8.5%) vs baseline: +4.7% ✅ is-recordingTime: ✅ 19.573ms (SLO: <20.500ms -4.5%) vs baseline: +2.1% Memory: ✅ 48.440MB (SLO: <53.000MB -8.6%) vs baseline: +4.8% ✅ record-exceptionTime: ✅ 38.079ms (SLO: <40.000ms -4.8%) vs baseline: +1.5% Memory: ✅ 42.528MB (SLO: <53.000MB 📉 -19.8%) vs baseline: +4.9% ✅ set-statusTime: ✅ 21.156ms (SLO: <22.000ms -3.8%) vs baseline: +2.2% Memory: ✅ 48.496MB (SLO: <53.000MB -8.5%) vs baseline: +5.0% ✅ startTime: ✅ 18.977ms (SLO: <20.500ms -7.4%) vs baseline: +2.0% Memory: ✅ 48.413MB (SLO: <53.000MB -8.7%) vs baseline: +4.7% ✅ start-finishTime: ✅ 51.509ms (SLO: <52.500ms 🟡 -1.9%) vs baseline: +0.4% Memory: ✅ 32.224MB (SLO: <34.000MB -5.2%) vs baseline: +5.1% ✅ start-finish-telemetryTime: ✅ 52.698ms (SLO: <54.500ms -3.3%) vs baseline: +0.3% Memory: ✅ 32.165MB (SLO: <34.000MB -5.4%) vs baseline: +4.7% ✅ start-finish-traceid128Time: ✅ 54.834ms (SLO: <56.000ms -2.1%) vs baseline: ~same Memory: ✅ 32.126MB (SLO: <34.000MB -5.5%) vs baseline: +4.9% ✅ start-traceid128Time: ✅ 19.655ms (SLO: <22.500ms 📉 -12.6%) vs baseline: +2.5% Memory: ✅ 48.409MB (SLO: <53.000MB -8.7%) vs baseline: +4.8% ✅ update-nameTime: ✅ 19.182ms (SLO: <22.000ms 📉 -12.8%) vs baseline: ~same Memory: ✅ 49.133MB (SLO: <53.000MB -7.3%) vs baseline: +4.9%
|
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.
I understand core.dispatch_with_results
has a large performance overhead, but moving forward where the use case involves awaiting results of signal handlers, is this pattern the recommended alternative?
data = {}
core.dispatch("<handler_id>", (data,)) # should populate data with results from handler
I'm not too sure how our core API works under the hood but does core.dispatch()
run asynchronously in a background thread? If so will this be sufficient for cases that need to await handler results?
@Yun-Kim the overhead comes from the response wrapping and dynamically creating objects when access stuff like:
I am really curious to help review the current situations where we need to return data back. For example, the request blocking stuff I'd love to see moved to exception raising pattern instead. I'd love to see event dispatching to be one directional only if we can. |
@brettlangdon thanks for clarifying! I agree that event dispatching should be unidirectional ideally - but for llmobs, we need to return data in async/multithreading cases where we need to return/hold on to the llmobs active context across execution boundaries (an example usage being the futures module in this PR). We can change those |
@Yun-Kim IMHO that solution is a good compromise, but I'd love to figure out a better way to handle it. e.g. if you need to track parent/child / create -> execute relationships in async workloads.... does tracing? should we be creating ExecutionContexts around these portions of the codebase? (an execution context does not need to result in a span being created, it is just a container for data stored in contextvars that understands parent/child relationship, and which emits events on enter/exit). |
I think this idea has some potential, but definitely a bigger change worth exploring and we'll follow up in a guild/separate thread on this! |
Description
We want to move people away from
core.dispatch_with_results
.This PR adds a linting rule to check for usage and encourage other patterns with
core.dispatch
.We added explicit allows for the existing usage and we can work to slowly migrate them away.
Testing
Added tests for the ast-grep linting rules.
Risks
Additional Notes