Repository navigation
fix: native rust fix for HAMT/ContextVar crash [backport 4.8] - #18708
Conversation
Codeowners resolved as |
|
Performance SLOsComparing candidate unknown (unknown) with baseline 4.8 (f26c09a) 📈 Performance Regressions (3 suites)📈 iastaspects - 118/118✅ add_aspectTime: ✅ 103.116µs (SLO: <130.000µs 📉 -20.7%) vs baseline: +3.4% Memory: ✅ 45.580MB (SLO: <48.000MB -5.0%) vs baseline: +4.8% ✅ add_inplace_aspectTime: ✅ 101.670µs (SLO: <130.000µs 📉 -21.8%) vs baseline: +0.5% Memory: ✅ 45.573MB (SLO: <48.000MB -5.1%) vs baseline: +5.1% ✅ add_inplace_noaspectTime: ✅ 28.009µs (SLO: <40.000µs 📉 -30.0%) vs baseline: -1.7% Memory: ✅ 45.670MB (SLO: <48.000MB -4.9%) vs baseline: +5.0% ✅ add_noaspectTime: ✅ 49.147µs (SLO: <70.000µs 📉 -29.8%) vs baseline: +0.6% Memory: ✅ 45.534MB (SLO: <48.000MB -5.1%) vs baseline: +4.7% ✅ bytearray_aspectTime: ✅ 253.246µs (SLO: <400.000µs 📉 -36.7%) vs baseline: -0.3% Memory: ✅ 45.552MB (SLO: <48.000MB -5.1%) vs baseline: +4.9% ✅ bytearray_extend_aspectTime: ✅ 652.823µs (SLO: <800.000µs 📉 -18.4%) vs baseline: +0.5% Memory: ✅ 45.562MB (SLO: <48.000MB -5.1%) vs baseline: +4.7% ✅ bytearray_extend_noaspectTime: ✅ 266.818µs (SLO: <400.000µs 📉 -33.3%) vs baseline: +1.0% Memory: ✅ 45.651MB (SLO: <48.000MB -4.9%) vs baseline: +5.0% ✅ bytearray_noaspectTime: ✅ 139.937µs (SLO: <300.000µs 📉 -53.4%) vs baseline: ~same Memory: ✅ 45.715MB (SLO: <48.000MB -4.8%) vs baseline: +5.1% ✅ bytes_aspectTime: ✅ 225.775µs (SLO: <300.000µs 📉 -24.7%) vs baseline: +0.7% Memory: ✅ 45.691MB (SLO: <48.000MB -4.8%) vs baseline: +4.8% ✅ bytes_noaspectTime: ✅ 135.324µs (SLO: <200.000µs 📉 -32.3%) vs baseline: +0.2% Memory: ✅ 45.623MB (SLO: <48.000MB -5.0%) vs baseline: +4.6% ✅ bytesio_aspectTime: ✅ 3.818ms (SLO: <5.000ms 📉 -23.6%) vs baseline: -1.0% Memory: ✅ 45.631MB (SLO: <48.000MB -4.9%) vs baseline: +4.9% ✅ bytesio_noaspectTime: ✅ 315.274µs (SLO: <420.000µs 📉 -24.9%) vs baseline: ~same Memory: ✅ 45.527MB (SLO: <48.000MB -5.2%) vs baseline: +4.7% ✅ capitalize_aspectTime: ✅ 89.729µs (SLO: <300.000µs 📉 -70.1%) vs baseline: +0.1% Memory: ✅ 45.623MB (SLO: <48.000MB -5.0%) vs baseline: +4.8% ✅ capitalize_noaspectTime: ✅ 261.020µs (SLO: <300.000µs 📉 -13.0%) vs baseline: +3.7% Memory: ✅ 45.604MB (SLO: <48.000MB -5.0%) vs baseline: +4.8% ✅ casefold_aspectTime: ✅ 89.468µs (SLO: <500.000µs 📉 -82.1%) vs baseline: -0.2% Memory: ✅ 45.461MB (SLO: <48.000MB -5.3%) vs baseline: +4.4% ✅ casefold_noaspectTime: ✅ 306.255µs (SLO: <500.000µs 📉 -38.7%) vs baseline: +0.4% Memory: ✅ 45.623MB (SLO: <48.000MB -5.0%) vs baseline: +4.7% ✅ decode_aspectTime: ✅ 86.794µs (SLO: <100.000µs 📉 -13.2%) vs baseline: +0.4% Memory: ✅ 45.717MB (SLO: <48.000MB -4.8%) vs baseline: +5.1% ✅ decode_noaspectTime: ✅ 154.874µs (SLO: <210.000µs 📉 -26.3%) vs baseline: ~same Memory: ✅ 45.625MB (SLO: <48.000MB -4.9%) vs baseline: +4.8% ✅ encode_aspectTime: ✅ 84.805µs (SLO: <200.000µs 📉 -57.6%) vs baseline: +0.2% Memory: ✅ 45.591MB (SLO: <48.000MB -5.0%) vs baseline: +4.5% ✅ encode_noaspectTime: ✅ 144.714µs (SLO: <200.000µs 📉 -27.6%) vs baseline: +0.5% Memory: ✅ 45.650MB (SLO: <48.000MB -4.9%) vs baseline: +4.7% ✅ format_aspectTime: ✅ 14.721ms (SLO: <19.200ms 📉 -23.3%) vs baseline: ~same Memory: ✅ 45.688MB (SLO: <48.000MB -4.8%) vs baseline: +4.9% ✅ format_map_aspectTime: ✅ 16.445ms (SLO: <21.500ms 📉 -23.5%) vs baseline: -0.2% Memory: ✅ 45.800MB (SLO: <48.000MB -4.6%) vs baseline: +5.0% ✅ format_map_noaspectTime: ✅ 362.522µs (SLO: <500.000µs 📉 -27.5%) vs baseline: -0.7% Memory: ✅ 45.779MB (SLO: <48.000MB -4.6%) vs baseline: +5.0% ✅ format_noaspectTime: ✅ 310.363µs (SLO: <500.000µs 📉 -37.9%) vs baseline: -0.2% Memory: ✅ 45.559MB (SLO: <48.000MB -5.1%) vs baseline: +4.3% ✅ index_aspectTime: ✅ 136.420µs (SLO: <300.000µs 📉 -54.5%) vs baseline: +6.6% Memory: ✅ 45.633MB (SLO: <48.000MB -4.9%) vs baseline: +4.8% ✅ index_noaspectTime: ✅ 40.859µs (SLO: <300.000µs 📉 -86.4%) vs baseline: +1.0% Memory: ✅ 45.690MB (SLO: <48.000MB -4.8%) vs baseline: +5.0% ✅ join_aspectTime: ✅ 211.503µs (SLO: <300.000µs 📉 -29.5%) vs baseline: +1.0% Memory: ✅ 45.651MB (SLO: <48.000MB -4.9%) vs baseline: +5.1% ✅ join_noaspectTime: ✅ 145.539µs (SLO: <300.000µs 📉 -51.5%) vs baseline: +0.9% Memory: ✅ 45.796MB (SLO: <48.000MB -4.6%) vs baseline: +5.5% ✅ ljust_aspectTime: ✅ 503.136µs (SLO: <700.000µs 📉 -28.1%) vs baseline: ~same Memory: ✅ 45.630MB (SLO: <48.000MB -4.9%) vs baseline: +4.7% ✅ ljust_noaspectTime: ✅ 281.603µs (SLO: <300.000µs -6.1%) vs baseline: +9.4% Memory: ✅ 45.669MB (SLO: <48.000MB -4.9%) vs baseline: +5.3% ✅ lower_aspectTime: ✅ 306.944µs (SLO: <500.000µs 📉 -38.6%) vs baseline: +0.2% Memory: ✅ 45.606MB (SLO: <48.000MB -5.0%) vs baseline: +4.7% ✅ lower_noaspectTime: ✅ 236.519µs (SLO: <300.000µs 📉 -21.2%) vs baseline: -0.3% Memory: ✅ 45.598MB (SLO: <48.000MB -5.0%) vs baseline: +4.8% ✅ lstrip_aspectTime: ✅ 0.275ms (SLO: <3.000ms 📉 -90.8%) vs baseline: -0.2% Memory: ✅ 45.641MB (SLO: <48.000MB -4.9%) vs baseline: +4.8% ✅ lstrip_noaspectTime: ✅ 0.177ms (SLO: <3.000ms 📉 -94.1%) vs baseline: +0.5% Memory: ✅ 45.682MB (SLO: <48.000MB -4.8%) vs baseline: +5.1% ✅ modulo_aspectTime: ✅ 14.333ms (SLO: <18.750ms 📉 -23.6%) vs baseline: -0.3% Memory: ✅ 45.799MB (SLO: <48.000MB -4.6%) vs baseline: +5.0% ✅ modulo_aspect_for_bytearray_bytearrayTime: ✅ 14.852ms (SLO: <19.350ms 📉 -23.2%) vs baseline: +0.2% Memory: ✅ 45.880MB (SLO: <48.000MB -4.4%) vs baseline: +5.2% ✅ modulo_aspect_for_bytesTime: ✅ 14.449ms (SLO: <18.900ms 📉 -23.5%) vs baseline: -0.2% Memory: ✅ 45.723MB (SLO: <48.000MB -4.7%) vs baseline: +4.8% ✅ modulo_aspect_for_bytes_bytearrayTime: ✅ 14.684ms (SLO: <19.150ms 📉 -23.3%) vs baseline: -0.4% Memory: ✅ 45.722MB (SLO: <48.000MB -4.7%) vs baseline: +4.7% ✅ modulo_noaspectTime: ✅ 0.361ms (SLO: <3.000ms 📉 -88.0%) vs baseline: ~same Memory: ✅ 45.581MB (SLO: <48.000MB -5.0%) vs baseline: +4.7% ✅ replace_aspectTime: ✅ 18.356ms (SLO: <24.000ms 📉 -23.5%) vs baseline: -0.4% Memory: ✅ 45.793MB (SLO: <48.000MB -4.6%) vs baseline: +5.0% ✅ replace_noaspectTime: ✅ 281.135µs (SLO: <400.000µs 📉 -29.7%) vs baseline: +0.5% Memory: ✅ 45.495MB (SLO: <48.000MB -5.2%) vs baseline: +4.3% ✅ repr_aspectTime: ✅ 321.897µs (SLO: <420.000µs 📉 -23.4%) vs baseline: -0.5% Memory: ✅ 45.691MB (SLO: <48.000MB -4.8%) vs baseline: +4.9% ✅ repr_noaspectTime: ✅ 47.119µs (SLO: <90.000µs 📉 -47.6%) vs baseline: +0.3% Memory: ✅ 45.667MB (SLO: <48.000MB -4.9%) vs baseline: +4.8% ✅ rstrip_aspectTime: ✅ 390.917µs (SLO: <500.000µs 📉 -21.8%) vs baseline: +0.2% Memory: ✅ 45.598MB (SLO: <48.000MB -5.0%) vs baseline: +4.9% ✅ rstrip_noaspectTime: ✅ 183.643µs (SLO: <300.000µs 📉 -38.8%) vs baseline: -0.4% Memory: ✅ 45.704MB (SLO: <48.000MB -4.8%) vs baseline: +5.1% ✅ slice_aspectTime: ✅ 185.393µs (SLO: <300.000µs 📉 -38.2%) vs baseline: +0.2% Memory: ✅ 45.620MB (SLO: <48.000MB -5.0%) vs baseline: +5.1% ✅ slice_noaspectTime: ✅ 53.951µs (SLO: <90.000µs 📉 -40.1%) vs baseline: ~same Memory: ✅ 45.578MB (SLO: <48.000MB -5.0%) vs baseline: +4.8% ✅ stringio_aspectTime: ✅ 3.864ms (SLO: <5.000ms 📉 -22.7%) vs baseline: ~same Memory: ✅ 45.533MB (SLO: <48.000MB -5.1%) vs baseline: +4.7% ✅ stringio_noaspectTime: ✅ 387.303µs (SLO: <500.000µs 📉 -22.5%) vs baseline: 📈 +10.5% Memory: ✅ 45.662MB (SLO: <48.000MB -4.9%) vs baseline: +5.2% ✅ strip_aspectTime: ✅ 275.244µs (SLO: <350.000µs 📉 -21.4%) vs baseline: -0.2% Memory: ✅ 45.676MB (SLO: <48.000MB -4.8%) vs baseline: +4.8% ✅ strip_noaspectTime: ✅ 175.781µs (SLO: <240.000µs 📉 -26.8%) vs baseline: +0.3% Memory: ✅ 45.610MB (SLO: <48.000MB -5.0%) vs baseline: +4.7% ✅ swapcase_aspectTime: ✅ 342.683µs (SLO: <500.000µs 📉 -31.5%) vs baseline: -0.2% Memory: ✅ 45.466MB (SLO: <48.000MB -5.3%) vs baseline: +4.7% ✅ swapcase_noaspectTime: ✅ 272.905µs (SLO: <400.000µs 📉 -31.8%) vs baseline: ~same Memory: ✅ 45.750MB (SLO: <48.000MB -4.7%) vs baseline: +4.7% ✅ title_aspectTime: ✅ 332.462µs (SLO: <500.000µs 📉 -33.5%) vs baseline: +0.5% Memory: ✅ 45.619MB (SLO: <48.000MB -5.0%) vs baseline: +5.0% ✅ title_noaspectTime: ✅ 260.374µs (SLO: <400.000µs 📉 -34.9%) vs baseline: +0.1% Memory: ✅ 45.500MB (SLO: <48.000MB -5.2%) vs baseline: +4.7% ✅ translate_aspectTime: ✅ 510.166µs (SLO: <700.000µs 📉 -27.1%) vs baseline: +0.7% Memory: ✅ 45.715MB (SLO: <48.000MB -4.8%) vs baseline: +5.3% ✅ translate_noaspectTime: ✅ 429.431µs (SLO: <500.000µs 📉 -14.1%) vs baseline: -2.0% Memory: ✅ 45.448MB (SLO: <48.000MB -5.3%) vs baseline: +4.6% ✅ upper_aspectTime: ✅ 308.933µs (SLO: <500.000µs 📉 -38.2%) vs baseline: +0.6% Memory: ✅ 45.678MB (SLO: <48.000MB -4.8%) vs baseline: +5.1% ✅ upper_noaspectTime: ✅ 234.934µs (SLO: <400.000µs 📉 -41.3%) vs baseline: +0.2% Memory: ✅ 45.557MB (SLO: <48.000MB -5.1%) vs baseline: +4.6% 📈 iastaspectsospath - 24/24✅ ospathbasename_aspectTime: ✅ 529.455µs (SLO: <700.000µs 📉 -24.4%) vs baseline: 📈 +25.9% Memory: ✅ 45.463MB (SLO: <48.000MB -5.3%) vs baseline: +4.9% ✅ ospathbasename_noaspectTime: ✅ 426.198µs (SLO: <700.000µs 📉 -39.1%) vs baseline: -0.6% Memory: ✅ 45.540MB (SLO: <48.000MB -5.1%) vs baseline: +4.9% ✅ ospathjoin_aspectTime: ✅ 630.123µs (SLO: <700.000µs -10.0%) vs baseline: -0.2% Memory: ✅ 45.455MB (SLO: <48.000MB -5.3%) vs baseline: +5.2% ✅ ospathjoin_noaspectTime: ✅ 635.418µs (SLO: <700.000µs -9.2%) vs baseline: -0.4% Memory: ✅ 45.407MB (SLO: <48.000MB -5.4%) vs baseline: +4.9% ✅ ospathnormcase_aspectTime: ✅ 352.803µs (SLO: <700.000µs 📉 -49.6%) vs baseline: ~same Memory: ✅ 45.322MB (SLO: <48.000MB -5.6%) vs baseline: +4.4% ✅ ospathnormcase_noaspectTime: ✅ 362.069µs (SLO: <700.000µs 📉 -48.3%) vs baseline: +0.2% Memory: ✅ 45.522MB (SLO: <48.000MB -5.2%) vs baseline: +5.2% ✅ ospathsplit_aspectTime: ✅ 487.830µs (SLO: <700.000µs 📉 -30.3%) vs baseline: -0.1% Memory: ✅ 45.457MB (SLO: <48.000MB -5.3%) vs baseline: +4.8% ✅ ospathsplit_noaspectTime: ✅ 498.075µs (SLO: <700.000µs 📉 -28.8%) vs baseline: +0.4% Memory: ✅ 45.471MB (SLO: <48.000MB -5.3%) vs baseline: +5.1% ✅ ospathsplitdrive_aspectTime: ✅ 368.976µs (SLO: <700.000µs 📉 -47.3%) vs baseline: -1.0% Memory: ✅ 45.493MB (SLO: <48.000MB -5.2%) vs baseline: +4.8% ✅ ospathsplitdrive_noaspectTime: ✅ 73.184µs (SLO: <700.000µs 📉 -89.5%) vs baseline: +1.2% Memory: ✅ 45.540MB (SLO: <48.000MB -5.1%) vs baseline: +5.0% ✅ ospathsplitext_aspectTime: ✅ 457.748µs (SLO: <700.000µs 📉 -34.6%) vs baseline: +0.3% Memory: ✅ 45.466MB (SLO: <48.000MB -5.3%) vs baseline: +4.7% ✅ ospathsplitext_noaspectTime: ✅ 463.186µs (SLO: <700.000µs 📉 -33.8%) vs baseline: +0.2% Memory: ✅ 45.434MB (SLO: <48.000MB -5.3%) vs baseline: +4.8% 📈 telemetryaddmetric - 30/30✅ 1-count-metric-1-timesTime: ✅ 2.361µs (SLO: <20.000µs 📉 -88.2%) vs baseline: 📈 +14.9% Memory: ✅ 37.867MB (SLO: <38.000MB 🟡 -0.4%) vs baseline: +4.8% ✅ 1-count-metrics-100-timesTime: ✅ 152.548µs (SLO: <220.000µs 📉 -30.7%) vs baseline: +0.3% Memory: ✅ 37.926MB (SLO: <38.000MB 🟡 -0.2%) vs baseline: +5.2% ✅ 1-distribution-metric-1-timesTime: ✅ 2.379µs (SLO: <20.000µs 📉 -88.1%) vs baseline: +0.1% Memory: ✅ 37.847MB (SLO: <38.000MB 🟡 -0.4%) vs baseline: +4.9% ✅ 1-distribution-metrics-100-timesTime: ✅ 164.978µs (SLO: <230.000µs 📉 -28.3%) vs baseline: +0.4% Memory: ✅ 37.827MB (SLO: <38.000MB 🟡 -0.5%) vs baseline: +4.7% ✅ 1-gauge-metric-1-timesTime: ✅ 1.959µs (SLO: <20.000µs 📉 -90.2%) vs baseline: +0.8% Memory: ✅ 37.886MB (SLO: <38.000MB 🟡 -0.3%) vs baseline: +5.1% ✅ 1-gauge-metrics-100-timesTime: ✅ 137.090µs (SLO: <150.000µs -8.6%) vs baseline: +0.4% Memory: ✅ 37.847MB (SLO: <38.000MB 🟡 -0.4%) vs baseline: +4.9% ✅ 1-rate-metric-1-timesTime: ✅ 2.199µs (SLO: <20.000µs 📉 -89.0%) vs baseline: -0.4% Memory: ✅ 37.808MB (SLO: <38.000MB 🟡 -0.5%) vs baseline: +4.7% ✅ 1-rate-metrics-100-timesTime: ✅ 164.994µs (SLO: <250.000µs 📉 -34.0%) vs baseline: -1.2% Memory: ✅ 37.886MB (SLO: <38.000MB 🟡 -0.3%) vs baseline: +4.5% ✅ 100-count-metrics-100-timesTime: ✅ 15.287ms (SLO: <22.000ms 📉 -30.5%) vs baseline: -0.4% Memory: ✅ 37.827MB (SLO: <38.000MB 🟡 -0.5%) vs baseline: +4.6% ✅ 100-distribution-metrics-100-timesTime: ✅ 1.741ms (SLO: <2.550ms 📉 -31.7%) vs baseline: ~same Memory: ✅ 37.808MB (SLO: <38.000MB 🟡 -0.5%) vs baseline: +4.7% ✅ 100-gauge-metrics-100-timesTime: ✅ 1.426ms (SLO: <1.550ms -8.0%) vs baseline: -0.3% Memory: ✅ 37.945MB (SLO: <38.000MB 🟡 -0.1%) vs baseline: +5.1% ✅ 100-rate-metrics-100-timesTime: ✅ 1.709ms (SLO: <2.550ms 📉 -33.0%) vs baseline: -0.6% Memory: ✅ 37.906MB (SLO: <38.000MB 🟡 -0.2%) vs baseline: +5.0% ✅ flush-1-metricTime: ✅ 3.551µs (SLO: <20.000µs 📉 -82.2%) vs baseline: +0.6% Memory: ✅ 37.768MB (SLO: <38.000MB 🟡 -0.6%) vs baseline: +4.5% ✅ flush-100-metricsTime: ✅ 173.569µs (SLO: <250.000µs 📉 -30.6%) vs baseline: -0.4% Memory: ✅ 37.926MB (SLO: <40.000MB -5.2%) vs baseline: +4.8% ✅ flush-1000-metricsTime: ✅ 2.198ms (SLO: <2.500ms 📉 -12.1%) vs baseline: +0.5% Memory: ✅ 38.653MB (SLO: <41.000MB -5.7%) vs baseline: +4.8% 🟡 Near SLO Breach (12 suites)🟡 coreapiscenario - 10/10 (1 unstable)
|
Route ContextVar activation through a native helper on CPython < 3.12 to pin context storage across PyContextVar_Set and avoid a rare HAMT/GC SEGV_MAPERR crash. Backport of kowalski/fix-fancy-rust-fix-for-hamt-crash.
35a59bd to
ec8815c
Compare
Backport of PR #18599 to branch 4.8.