fix(internal): detach threads if joinable before destroying#17297
Conversation
b04d366 to
5d255a9
Compare
Codeowners resolved as |
Co-authored-by: Brett Langdon <brett.langdon@datadoghq.com>
Performance SLOsComparing candidate kowalski/fix-internal-detach-threads-if-joinable-before-destroying (be6288f) with baseline main (8cddb60) 📈 Performance Regressions (4 suites)📈 iastaspects - 118/118✅ add_aspectTime: ✅ 105.596µs (SLO: <130.000µs 📉 -18.8%) vs baseline: +4.5% Memory: ✅ 43.955MB (SLO: <46.000MB -4.4%) vs baseline: +5.0% ✅ add_inplace_aspectTime: ✅ 102.085µs (SLO: <130.000µs 📉 -21.5%) vs baseline: +1.4% Memory: ✅ 43.925MB (SLO: <46.000MB -4.5%) vs baseline: +4.7% ✅ add_inplace_noaspectTime: ✅ 28.213µs (SLO: <40.000µs 📉 -29.5%) vs baseline: -0.5% Memory: ✅ 43.940MB (SLO: <46.000MB -4.5%) vs baseline: +4.8% ✅ add_noaspectTime: ✅ 49.637µs (SLO: <70.000µs 📉 -29.1%) vs baseline: +1.1% Memory: ✅ 43.902MB (SLO: <46.000MB -4.6%) vs baseline: +4.7% ✅ bytearray_aspectTime: ✅ 255.987µs (SLO: <400.000µs 📉 -36.0%) vs baseline: +1.2% Memory: ✅ 43.935MB (SLO: <46.000MB -4.5%) vs baseline: +4.9% ✅ bytearray_extend_aspectTime: ✅ 657.727µs (SLO: <800.000µs 📉 -17.8%) vs baseline: +3.3% Memory: ✅ 43.899MB (SLO: <46.000MB -4.6%) vs baseline: +4.7% ✅ bytearray_extend_noaspectTime: ✅ 268.859µs (SLO: <400.000µs 📉 -32.8%) vs baseline: +1.2% Memory: ✅ 43.942MB (SLO: <46.000MB -4.5%) vs baseline: +4.6% ✅ bytearray_noaspectTime: ✅ 142.387µs (SLO: <300.000µs 📉 -52.5%) vs baseline: +3.6% Memory: ✅ 43.890MB (SLO: <46.000MB -4.6%) vs baseline: +4.7% ✅ bytes_aspectTime: ✅ 220.795µs (SLO: <300.000µs 📉 -26.4%) vs baseline: +1.3% Memory: ✅ 43.914MB (SLO: <46.000MB -4.5%) vs baseline: +4.7% ✅ bytes_noaspectTime: ✅ 134.821µs (SLO: <200.000µs 📉 -32.6%) vs baseline: +1.2% Memory: ✅ 43.898MB (SLO: <46.000MB -4.6%) vs baseline: +4.5% ✅ bytesio_aspectTime: ✅ 3.802ms (SLO: <5.000ms 📉 -24.0%) vs baseline: +0.5% Memory: ✅ 43.888MB (SLO: <46.000MB -4.6%) vs baseline: +4.8% ✅ bytesio_noaspectTime: ✅ 315.857µs (SLO: <420.000µs 📉 -24.8%) vs baseline: ~same Memory: ✅ 43.862MB (SLO: <46.000MB -4.6%) vs baseline: +4.7% ✅ capitalize_aspectTime: ✅ 89.899µs (SLO: <300.000µs 📉 -70.0%) vs baseline: +0.3% Memory: ✅ 43.781MB (SLO: <46.000MB -4.8%) vs baseline: +4.2% ✅ capitalize_noaspectTime: ✅ 266.586µs (SLO: <300.000µs 📉 -11.1%) vs baseline: +6.5% Memory: ✅ 43.759MB (SLO: <46.000MB -4.9%) vs baseline: +4.3% ✅ casefold_aspectTime: ✅ 90.305µs (SLO: <500.000µs 📉 -81.9%) vs baseline: +0.9% Memory: ✅ 43.914MB (SLO: <46.000MB -4.5%) vs baseline: +4.8% ✅ casefold_noaspectTime: ✅ 306.041µs (SLO: <500.000µs 📉 -38.8%) vs baseline: ~same Memory: ✅ 43.890MB (SLO: <46.000MB -4.6%) vs baseline: +4.8% ✅ decode_aspectTime: ✅ 86.608µs (SLO: <100.000µs 📉 -13.4%) vs baseline: -0.6% Memory: ✅ 43.950MB (SLO: <46.000MB -4.5%) vs baseline: +4.6% ✅ decode_noaspectTime: ✅ 152.563µs (SLO: <210.000µs 📉 -27.4%) vs baseline: -0.5% Memory: ✅ 43.910MB (SLO: <46.000MB -4.5%) vs baseline: +4.9% ✅ encode_aspectTime: ✅ 84.565µs (SLO: <200.000µs 📉 -57.7%) vs baseline: +0.5% Memory: ✅ 43.923MB (SLO: <46.000MB -4.5%) vs baseline: +4.8% ✅ encode_noaspectTime: ✅ 141.631µs (SLO: <200.000µs 📉 -29.2%) vs baseline: +0.7% Memory: ✅ 43.966MB (SLO: <46.000MB -4.4%) vs baseline: +4.9% ✅ format_aspectTime: ✅ 14.671ms (SLO: <19.200ms 📉 -23.6%) vs baseline: +0.3% Memory: ✅ 44.085MB (SLO: <46.000MB -4.2%) vs baseline: +5.1% ✅ format_map_aspectTime: ✅ 16.413ms (SLO: <21.500ms 📉 -23.7%) vs baseline: +0.1% Memory: ✅ 44.086MB (SLO: <46.000MB -4.2%) vs baseline: +4.9% ✅ format_map_noaspectTime: ✅ 374.324µs (SLO: <500.000µs 📉 -25.1%) vs baseline: -0.2% Memory: ✅ 43.888MB (SLO: <46.000MB -4.6%) vs baseline: +4.7% ✅ format_noaspectTime: ✅ 311.795µs (SLO: <500.000µs 📉 -37.6%) vs baseline: +2.9% Memory: ✅ 43.893MB (SLO: <46.000MB -4.6%) vs baseline: +4.7% ✅ index_aspectTime: ✅ 136.377µs (SLO: <300.000µs 📉 -54.5%) vs baseline: 📈 +12.4% Memory: ✅ 43.953MB (SLO: <46.000MB -4.5%) vs baseline: +4.9% ✅ index_noaspectTime: ✅ 40.457µs (SLO: <300.000µs 📉 -86.5%) vs baseline: +0.7% Memory: ✅ 43.991MB (SLO: <46.000MB -4.4%) vs baseline: +4.8% ✅ join_aspectTime: ✅ 214.457µs (SLO: <300.000µs 📉 -28.5%) vs baseline: +1.7% Memory: ✅ 43.854MB (SLO: <46.000MB -4.7%) vs baseline: +4.5% ✅ join_noaspectTime: ✅ 145.425µs (SLO: <300.000µs 📉 -51.5%) vs baseline: +0.8% Memory: ✅ 43.994MB (SLO: <46.000MB -4.4%) vs baseline: +4.9% ✅ ljust_aspectTime: ✅ 503.492µs (SLO: <700.000µs 📉 -28.1%) vs baseline: -1.0% Memory: ✅ 43.968MB (SLO: <46.000MB -4.4%) vs baseline: +4.9% ✅ ljust_noaspectTime: ✅ 286.607µs (SLO: <300.000µs -4.5%) vs baseline: 📈 +11.2% Memory: ✅ 43.953MB (SLO: <46.000MB -4.5%) vs baseline: +4.8% ✅ lower_aspectTime: ✅ 299.358µs (SLO: <500.000µs 📉 -40.1%) vs baseline: +0.2% Memory: ✅ 43.981MB (SLO: <46.000MB -4.4%) vs baseline: +4.9% ✅ lower_noaspectTime: ✅ 232.207µs (SLO: <300.000µs 📉 -22.6%) vs baseline: -2.4% Memory: ✅ 43.929MB (SLO: <46.000MB -4.5%) vs baseline: +5.0% ✅ lstrip_aspectTime: ✅ 0.283ms (SLO: <3.000ms 📉 -90.6%) vs baseline: +4.0% Memory: ✅ 43.867MB (SLO: <46.000MB -4.6%) vs baseline: +4.5% ✅ lstrip_noaspectTime: ✅ 0.176ms (SLO: <3.000ms 📉 -94.1%) vs baseline: -1.1% Memory: ✅ 43.887MB (SLO: <46.000MB -4.6%) vs baseline: +4.7% ✅ modulo_aspectTime: ✅ 14.299ms (SLO: <18.750ms 📉 -23.7%) vs baseline: -0.5% Memory: ✅ 43.950MB (SLO: <46.000MB -4.5%) vs baseline: +4.3% ✅ modulo_aspect_for_bytearray_bytearrayTime: ✅ 14.792ms (SLO: <19.350ms 📉 -23.6%) vs baseline: ~same Memory: ✅ 44.126MB (SLO: <46.000MB -4.1%) vs baseline: +5.2% ✅ modulo_aspect_for_bytesTime: ✅ 14.460ms (SLO: <18.900ms 📉 -23.5%) vs baseline: ~same Memory: ✅ 44.092MB (SLO: <46.000MB -4.1%) vs baseline: +4.8% ✅ modulo_aspect_for_bytes_bytearrayTime: ✅ 14.553ms (SLO: <19.150ms 📉 -24.0%) vs baseline: -0.5% Memory: ✅ 44.055MB (SLO: <46.000MB -4.2%) vs baseline: +5.2% ✅ modulo_noaspectTime: ✅ 0.362ms (SLO: <3.000ms 📉 -87.9%) vs baseline: +0.1% Memory: ✅ 44.023MB (SLO: <46.000MB -4.3%) vs baseline: +5.1% ✅ replace_aspectTime: ✅ 18.413ms (SLO: <24.000ms 📉 -23.3%) vs baseline: ~same Memory: ✅ 44.152MB (SLO: <46.000MB -4.0%) vs baseline: +5.3% ✅ replace_noaspectTime: ✅ 281.317µs (SLO: <400.000µs 📉 -29.7%) vs baseline: +0.5% Memory: ✅ 44.001MB (SLO: <46.000MB -4.3%) vs baseline: +5.1% ✅ repr_aspectTime: ✅ 326.139µs (SLO: <420.000µs 📉 -22.3%) vs baseline: +3.6% Memory: ✅ 43.934MB (SLO: <46.000MB -4.5%) vs baseline: +5.0% ✅ repr_noaspectTime: ✅ 46.888µs (SLO: <90.000µs 📉 -47.9%) vs baseline: +0.5% Memory: ✅ 43.968MB (SLO: <46.000MB -4.4%) vs baseline: +4.8% ✅ rstrip_aspectTime: ✅ 387.307µs (SLO: <500.000µs 📉 -22.5%) vs baseline: -1.1% Memory: ✅ 43.944MB (SLO: <46.000MB -4.5%) vs baseline: +4.8% ✅ rstrip_noaspectTime: ✅ 184.091µs (SLO: <300.000µs 📉 -38.6%) vs baseline: -0.8% Memory: ✅ 43.953MB (SLO: <46.000MB -4.4%) vs baseline: +4.8% ✅ slice_aspectTime: ✅ 184.350µs (SLO: <300.000µs 📉 -38.6%) vs baseline: ~same Memory: ✅ 43.948MB (SLO: <46.000MB -4.5%) vs baseline: +4.7% ✅ slice_noaspectTime: ✅ 54.685µs (SLO: <90.000µs 📉 -39.2%) vs baseline: +1.0% Memory: ✅ 43.863MB (SLO: <46.000MB -4.6%) vs baseline: +4.8% ✅ stringio_aspectTime: ✅ 4.535ms (SLO: <5.000ms -9.3%) vs baseline: 📈 +18.5% Memory: ✅ 44.010MB (SLO: <46.000MB -4.3%) vs baseline: +5.1% ✅ stringio_noaspectTime: ✅ 353.576µs (SLO: <500.000µs 📉 -29.3%) vs baseline: +2.2% Memory: ✅ 43.905MB (SLO: <46.000MB -4.6%) vs baseline: +4.5% ✅ strip_aspectTime: ✅ 284.792µs (SLO: <350.000µs 📉 -18.6%) vs baseline: +5.5% Memory: ✅ 44.017MB (SLO: <46.000MB -4.3%) vs baseline: +5.0% ✅ strip_noaspectTime: ✅ 177.440µs (SLO: <240.000µs 📉 -26.1%) vs baseline: +0.7% Memory: ✅ 43.887MB (SLO: <46.000MB -4.6%) vs baseline: +4.6% ✅ swapcase_aspectTime: ✅ 333.085µs (SLO: <500.000µs 📉 -33.4%) vs baseline: +1.0% Memory: ✅ 44.023MB (SLO: <46.000MB -4.3%) vs baseline: +5.1% ✅ swapcase_noaspectTime: ✅ 272.513µs (SLO: <400.000µs 📉 -31.9%) vs baseline: +0.1% Memory: ✅ 43.851MB (SLO: <46.000MB -4.7%) vs baseline: +4.4% ✅ title_aspectTime: ✅ 322.475µs (SLO: <500.000µs 📉 -35.5%) vs baseline: -0.6% Memory: ✅ 43.923MB (SLO: <46.000MB -4.5%) vs baseline: +4.6% ✅ title_noaspectTime: ✅ 260.654µs (SLO: <400.000µs 📉 -34.8%) vs baseline: -0.2% Memory: ✅ 43.918MB (SLO: <46.000MB -4.5%) vs baseline: +4.9% ✅ translate_aspectTime: ✅ 493.271µs (SLO: <700.000µs 📉 -29.5%) vs baseline: -0.3% Memory: ✅ 43.912MB (SLO: <46.000MB -4.5%) vs baseline: +4.8% ✅ translate_noaspectTime: ✅ 425.772µs (SLO: <500.000µs 📉 -14.8%) vs baseline: -1.6% Memory: ✅ 43.957MB (SLO: <46.000MB -4.4%) vs baseline: +4.9% ✅ upper_aspectTime: ✅ 296.411µs (SLO: <500.000µs 📉 -40.7%) vs baseline: -0.8% Memory: ✅ 43.909MB (SLO: <46.000MB -4.5%) vs baseline: +4.8% ✅ upper_noaspectTime: ✅ 233.580µs (SLO: <400.000µs 📉 -41.6%) vs baseline: -1.2% Memory: ✅ 43.957MB (SLO: <46.000MB -4.4%) vs baseline: +5.0% 📈 iastaspectsospath - 24/24✅ ospathbasename_aspectTime: ✅ 514.991µs (SLO: <700.000µs 📉 -26.4%) vs baseline: 📈 +21.8% Memory: ✅ 43.843MB (SLO: <46.000MB -4.7%) vs baseline: +4.8% ✅ ospathbasename_noaspectTime: ✅ 428.260µs (SLO: <700.000µs 📉 -38.8%) vs baseline: -0.3% Memory: ✅ 43.832MB (SLO: <46.000MB -4.7%) vs baseline: +4.4% ✅ ospathjoin_aspectTime: ✅ 627.515µs (SLO: <700.000µs 📉 -10.4%) vs baseline: ~same Memory: ✅ 43.849MB (SLO: <46.000MB -4.7%) vs baseline: +4.5% ✅ ospathjoin_noaspectTime: ✅ 633.283µs (SLO: <700.000µs -9.5%) vs baseline: +0.4% Memory: ✅ 43.771MB (SLO: <46.000MB -4.8%) vs baseline: +4.4% ✅ ospathnormcase_aspectTime: ✅ 351.637µs (SLO: <700.000µs 📉 -49.8%) vs baseline: +0.8% Memory: ✅ 44.007MB (SLO: <46.000MB -4.3%) vs baseline: +4.9% ✅ ospathnormcase_noaspectTime: ✅ 360.914µs (SLO: <700.000µs 📉 -48.4%) vs baseline: +2.2% Memory: ✅ 43.859MB (SLO: <46.000MB -4.7%) vs baseline: +4.7% ✅ ospathsplit_aspectTime: ✅ 484.637µs (SLO: <700.000µs 📉 -30.8%) vs baseline: -0.6% Memory: ✅ 43.936MB (SLO: <46.000MB -4.5%) vs baseline: +4.8% ✅ ospathsplit_noaspectTime: ✅ 494.585µs (SLO: <700.000µs 📉 -29.3%) vs baseline: -0.7% Memory: ✅ 43.930MB (SLO: <46.000MB -4.5%) vs baseline: +5.0% ✅ ospathsplitdrive_aspectTime: ✅ 373.821µs (SLO: <700.000µs 📉 -46.6%) vs baseline: +0.9% Memory: ✅ 43.864MB (SLO: <46.000MB -4.6%) vs baseline: +4.6% ✅ ospathsplitdrive_noaspectTime: ✅ 73.026µs (SLO: <700.000µs 📉 -89.6%) vs baseline: ~same Memory: ✅ 43.794MB (SLO: <46.000MB -4.8%) vs baseline: +4.4% ✅ ospathsplitext_aspectTime: ✅ 461.207µs (SLO: <700.000µs 📉 -34.1%) vs baseline: +1.2% Memory: ✅ 43.875MB (SLO: <46.000MB -4.6%) vs baseline: +4.6% ✅ ospathsplitext_noaspectTime: ✅ 463.247µs (SLO: <700.000µs 📉 -33.8%) vs baseline: +0.5% Memory: ✅ 43.734MB (SLO: <46.000MB -4.9%) vs baseline: +4.4% 📈 iastaspectssplit - 12/12✅ rsplit_aspectTime: ✅ 167.477µs (SLO: <250.000µs 📉 -33.0%) vs baseline: 📈 +10.7% Memory: ✅ 43.941MB (SLO: <46.000MB -4.5%) vs baseline: +5.0% ✅ rsplit_noaspectTime: ✅ 160.704µs (SLO: <250.000µs 📉 -35.7%) vs baseline: +2.4% Memory: ✅ 44.013MB (SLO: <46.000MB -4.3%) vs baseline: +5.2% ✅ split_aspectTime: ✅ 151.450µs (SLO: <250.000µs 📉 -39.4%) vs baseline: +2.4% Memory: ✅ 43.858MB (SLO: <46.000MB -4.7%) vs baseline: +4.7% ✅ split_noaspectTime: ✅ 159.415µs (SLO: <250.000µs 📉 -36.2%) vs baseline: +2.8% Memory: ✅ 43.919MB (SLO: <46.000MB -4.5%) vs baseline: +4.8% ✅ splitlines_aspectTime: ✅ 153.417µs (SLO: <250.000µs 📉 -38.6%) vs baseline: +5.2% Memory: ✅ 43.881MB (SLO: <46.000MB -4.6%) vs baseline: +4.8% ✅ splitlines_noaspectTime: ✅ 155.573µs (SLO: <250.000µs 📉 -37.8%) vs baseline: +4.0% Memory: ✅ 43.903MB (SLO: <46.000MB -4.6%) vs baseline: +4.8% 📈 telemetryaddmetric - 30/30✅ 1-count-metric-1-timesTime: ✅ 2.339µs (SLO: <20.000µs 📉 -88.3%) vs baseline: 📈 +10.7% Memory: ✅ 36.215MB (SLO: <38.000MB -4.7%) vs baseline: +4.3% ✅ 1-count-metrics-100-timesTime: ✅ 154.277µs (SLO: <220.000µs 📉 -29.9%) vs baseline: +3.1% Memory: ✅ 36.255MB (SLO: <38.000MB -4.6%) vs baseline: +4.4% ✅ 1-distribution-metric-1-timesTime: ✅ 2.421µs (SLO: <20.000µs 📉 -87.9%) vs baseline: -1.7% Memory: ✅ 36.255MB (SLO: <38.000MB -4.6%) vs baseline: +4.5% ✅ 1-distribution-metrics-100-timesTime: ✅ 163.950µs (SLO: <230.000µs 📉 -28.7%) vs baseline: +0.7% Memory: ✅ 36.313MB (SLO: <38.000MB -4.4%) vs baseline: +4.9% ✅ 1-gauge-metric-1-timesTime: ✅ 1.997µs (SLO: <20.000µs 📉 -90.0%) vs baseline: +1.1% Memory: ✅ 36.294MB (SLO: <38.000MB -4.5%) vs baseline: +4.3% ✅ 1-gauge-metrics-100-timesTime: ✅ 137.805µs (SLO: <150.000µs -8.1%) vs baseline: +0.4% Memory: ✅ 36.274MB (SLO: <38.000MB -4.5%) vs baseline: +4.5% ✅ 1-rate-metric-1-timesTime: ✅ 2.321µs (SLO: <20.000µs 📉 -88.4%) vs baseline: +4.4% Memory: ✅ 36.274MB (SLO: <38.000MB -4.5%) vs baseline: +4.6% ✅ 1-rate-metrics-100-timesTime: ✅ 169.098µs (SLO: <250.000µs 📉 -32.4%) vs baseline: +3.5% Memory: ✅ 36.372MB (SLO: <38.000MB -4.3%) vs baseline: +4.4% ✅ 100-count-metrics-100-timesTime: ✅ 15.475ms (SLO: <22.000ms 📉 -29.7%) vs baseline: +1.5% Memory: ✅ 36.235MB (SLO: <38.000MB -4.6%) vs baseline: +4.1% ✅ 100-distribution-metrics-100-timesTime: ✅ 1.736ms (SLO: <2.550ms 📉 -31.9%) vs baseline: +0.3% Memory: ✅ 36.274MB (SLO: <38.000MB -4.5%) vs baseline: +4.3% ✅ 100-gauge-metrics-100-timesTime: ✅ 1.414ms (SLO: <1.550ms -8.8%) vs baseline: +1.2% Memory: ✅ 36.235MB (SLO: <38.000MB -4.6%) vs baseline: +4.2% ✅ 100-rate-metrics-100-timesTime: ✅ 1.742ms (SLO: <2.550ms 📉 -31.7%) vs baseline: +3.2% Memory: ✅ 36.255MB (SLO: <38.000MB -4.6%) vs baseline: +4.5% ✅ flush-1-metricTime: ✅ 3.641µs (SLO: <20.000µs 📉 -81.8%) vs baseline: +2.0% Memory: ✅ 36.667MB (SLO: <38.000MB -3.5%) vs baseline: +5.4% ✅ flush-100-metricsTime: ✅ 178.167µs (SLO: <250.000µs 📉 -28.7%) vs baseline: +1.8% Memory: ✅ 36.726MB (SLO: <38.000MB -3.4%) vs baseline: +5.7% ✅ flush-1000-metricsTime: ✅ 2.225ms (SLO: <2.500ms 📉 -11.0%) vs baseline: +1.3% Memory: ✅ 37.080MB (SLO: <38.750MB -4.3%) vs baseline: +4.6% 🟡 Near SLO Breach (3 suites)🟡 djangosimple - 30/30✅ appsecTime: ✅ 19.788ms (SLO: <22.300ms 📉 -11.3%) vs baseline: +0.4% Memory: ✅ 69.491MB (SLO: <73.500MB -5.5%) vs baseline: +4.9% ✅ exception-replay-enabledTime: ✅ 1.332ms (SLO: <1.450ms -8.2%) vs baseline: +0.1% Memory: ✅ 67.712MB (SLO: <71.500MB -5.3%) vs baseline: +4.9% ✅ iastTime: ✅ 19.819ms (SLO: <22.250ms 📉 -10.9%) vs baseline: ~same Memory: ✅ 69.511MB (SLO: <75.000MB -7.3%) vs baseline: +4.9% ✅ profilerTime: ✅ 15.158ms (SLO: <16.550ms -8.4%) vs baseline: ~same Memory: ✅ 60.435MB (SLO: <61.000MB 🟡 -0.9%) vs baseline: +4.8% ✅ resource-renamingTime: ✅ 19.636ms (SLO: <21.750ms -9.7%) vs baseline: -0.3% Memory: ✅ 69.491MB (SLO: <73.500MB -5.5%) vs baseline: +4.9% ✅ span-code-originTime: ✅ 20.326ms (SLO: <28.200ms 📉 -27.9%) vs baseline: +1.7% Memory: ✅ 69.570MB (SLO: <75.000MB -7.2%) vs baseline: +4.9% ✅ tracerTime: ✅ 19.865ms (SLO: <21.750ms -8.7%) vs baseline: +0.7% Memory: ✅ 69.432MB (SLO: <75.000MB -7.4%) vs baseline: +4.9% ✅ tracer-and-profilerTime: ✅ 21.108ms (SLO: <23.500ms 📉 -10.2%) vs baseline: +0.2% Memory: ✅ 71.506MB (SLO: <75.000MB -4.7%) vs baseline: +4.9% ✅ tracer-dont-create-db-spansTime: ✅ 19.845ms (SLO: <21.500ms -7.7%) vs baseline: ~same Memory: ✅ 69.490MB (SLO: <75.000MB -7.3%) vs baseline: +4.9% ✅ tracer-minimalTime: ✅ 16.979ms (SLO: <17.500ms -3.0%) vs baseline: +0.3% Memory: ✅ 69.412MB (SLO: <75.000MB -7.5%) vs baseline: +5.2% ✅ tracer-nativeTime: ✅ 19.732ms (SLO: <21.750ms -9.3%) vs baseline: +0.6% Memory: ✅ 69.420MB (SLO: <72.500MB -4.2%) vs baseline: +4.7% ✅ tracer-no-cachesTime: ✅ 17.658ms (SLO: <19.650ms 📉 -10.1%) vs baseline: ~same Memory: ✅ 69.442MB (SLO: <75.000MB -7.4%) vs baseline: +4.9% ✅ tracer-no-databasesTime: ✅ 19.478ms (SLO: <20.100ms -3.1%) vs baseline: +0.5% Memory: ✅ 69.481MB (SLO: <75.000MB -7.4%) vs baseline: +4.9% ✅ tracer-no-middlewareTime: ✅ 19.468ms (SLO: <21.500ms -9.5%) vs baseline: -0.1% Memory: ✅ 69.422MB (SLO: <75.000MB -7.4%) vs baseline: +4.7% ✅ tracer-no-templatesTime: ✅ 19.853ms (SLO: <22.000ms -9.8%) vs baseline: +2.0% Memory: ✅ 69.536MB (SLO: <73.500MB -5.4%) vs baseline: +4.9% 🟡 flasksimple - 18/18✅ appsec-getTime: ✅ 3.373ms (SLO: <4.750ms 📉 -29.0%) vs baseline: -0.2% Memory: ✅ 56.572MB (SLO: <66.500MB 📉 -14.9%) vs baseline: +4.8% ✅ appsec-postTime: ✅ 2.870ms (SLO: <6.750ms 📉 -57.5%) vs baseline: ~same Memory: ✅ 56.689MB (SLO: <66.500MB 📉 -14.8%) vs baseline: +5.1% ✅ appsec-telemetryTime: ✅ 3.399ms (SLO: <4.750ms 📉 -28.5%) vs baseline: +0.7% Memory: ✅ 56.687MB (SLO: <66.500MB 📉 -14.8%) vs baseline: +5.1% ✅ debuggerTime: ✅ 1.881ms (SLO: <2.000ms -5.9%) vs baseline: ~same Memory: ✅ 49.370MB (SLO: <51.500MB -4.1%) vs baseline: +5.3% ✅ iast-getTime: ✅ 1.872ms (SLO: <2.000ms -6.4%) vs baseline: -0.2% Memory: ✅ 46.202MB (SLO: <49.000MB -5.7%) vs baseline: +5.2% ✅ profilerTime: ✅ 1.914ms (SLO: <2.100ms -8.8%) vs baseline: +0.1% Memory: ✅ 52.436MB (SLO: <53.500MB 🟡 -2.0%) vs baseline: +5.1% ✅ resource-renamingTime: ✅ 3.350ms (SLO: <3.650ms -8.2%) vs baseline: -0.1% Memory: ✅ 56.687MB (SLO: <60.000MB -5.5%) vs baseline: +5.1% ✅ tracerTime: ✅ 3.371ms (SLO: <3.650ms -7.6%) vs baseline: ~same Memory: ✅ 56.680MB (SLO: <60.000MB -5.5%) vs baseline: +5.2% ✅ tracer-nativeTime: ✅ 3.365ms (SLO: <3.650ms -7.8%) vs baseline: ~same Memory: ✅ 56.613MB (SLO: <60.000MB -5.6%) vs baseline: +5.0% 🟡 recursivecomputation - 8/8✅ deepTime: ✅ 312.056ms (SLO: <320.950ms -2.8%) vs baseline: +0.1% Memory: ✅ 37.513MB (SLO: <38.750MB -3.2%) vs baseline: +5.0% ✅ deep-profiledTime: ✅ 328.900ms (SLO: <359.150ms -8.4%) vs baseline: -0.3% Memory: ✅ 43.863MB (SLO: <46.000MB -4.6%) vs baseline: +4.8% ✅ mediumTime: ✅ 7.320ms (SLO: <7.400ms 🟡 -1.1%) vs baseline: ~same Memory: ✅ 36.294MB (SLO: <38.000MB -4.5%) vs baseline: +4.9% ✅ shallowTime: ✅ 1.024ms (SLO: <1.050ms -2.4%) vs baseline: +1.0% Memory: ✅ 36.255MB (SLO: <38.000MB -4.6%) vs baseline: +4.6%
|
…able-before-destroying
|
✅ Tests 🎉 All green!❄️ No new flaky tests detected 🔗 Commit SHA: be6288f | Docs | Datadog PR Page | Was this helpful? React with 👍/👎 or give us feedback! |
…able-before-destroying
|
Unsure if this is needed, but definitely not harmful and an easy/safe check. |
56acdf4
into
main
|
This change is marked for backport to 4.6 and it does not conflict with that branch. |
|
This change is marked for backport to 4.5 and it does not conflict with that branch. |
## Description This fixes a crash that can happen post-fork in fork-heavy workloads. ``` Error UnixSignal: Process terminated with SI_TKILL (SIGABRT) #0 0x00007ed5f6d869fc pthread_kill #1 0x00007ed5f6d32476 gsignal #2 0x00007ed5f6d187f3 abort #3 0x00007ed5f4fdf277 std::terminate #4 0x00007ed5c34737e6 PeriodicThread__after_fork #5 0x0000627d348a79b8 method_vectorcall_VARARGS_KEYWORDS (/usr/src/python/Objects/descrobject.c:365:14) #6 0x0000627d34847ea8 _PyObject_VectorcallTstate (/usr/src/python/./Include/internal/pycore_call.h:92:11) #7 0x0000627d34847ea8 PyObject_Vectorcall (/usr/src/python/Objects/call.c:325:12) #8 0x0000627d3486ec97 _PyEval_EvalFrameDefault (/usr/src/python/Python/bytecodes.c:2715:19) #9 0x0000627d34848e86 _PyObject_VectorcallTstate (/usr/src/python/./Include/internal/pycore_call.h:92:11) #10 0x0000627d34848e86 method_vectorcall (/usr/src/python/Objects/classobject.c:69:20) #11 0x0000627d34847a94 _PyObject_VectorcallTstate (/usr/src/python/./Include/internal/pycore_call.h:92:11) #12 0x00007ed5c3474631 std::thread::_State_impl<std::thread::_Invoker<std::tuple<_PeriodicThread_do_start(periodic_thread*, bool)::{lambda()#1}> > >::_M_run #13 0x00007ed5c3474e10 execute_native_thread_routine ``` _See IR-50207 for more details._ Co-authored-by: brettlangdon <brett.langdon@datadoghq.com> (cherry picked from commit 56acdf4)
## Description This fixes a crash that can happen post-fork in fork-heavy workloads. ``` Error UnixSignal: Process terminated with SI_TKILL (SIGABRT) #0 0x00007ed5f6d869fc pthread_kill #1 0x00007ed5f6d32476 gsignal #2 0x00007ed5f6d187f3 abort #3 0x00007ed5f4fdf277 std::terminate #4 0x00007ed5c34737e6 PeriodicThread__after_fork #5 0x0000627d348a79b8 method_vectorcall_VARARGS_KEYWORDS (/usr/src/python/Objects/descrobject.c:365:14) #6 0x0000627d34847ea8 _PyObject_VectorcallTstate (/usr/src/python/./Include/internal/pycore_call.h:92:11) #7 0x0000627d34847ea8 PyObject_Vectorcall (/usr/src/python/Objects/call.c:325:12) #8 0x0000627d3486ec97 _PyEval_EvalFrameDefault (/usr/src/python/Python/bytecodes.c:2715:19) #9 0x0000627d34848e86 _PyObject_VectorcallTstate (/usr/src/python/./Include/internal/pycore_call.h:92:11) #10 0x0000627d34848e86 method_vectorcall (/usr/src/python/Objects/classobject.c:69:20) #11 0x0000627d34847a94 _PyObject_VectorcallTstate (/usr/src/python/./Include/internal/pycore_call.h:92:11) #12 0x00007ed5c3474631 std::thread::_State_impl<std::thread::_Invoker<std::tuple<_PeriodicThread_do_start(periodic_thread*, bool)::{lambda()#1}> > >::_M_run #13 0x00007ed5c3474e10 execute_native_thread_routine ``` _See IR-50207 for more details._ Co-authored-by: brettlangdon <brett.langdon@datadoghq.com> (cherry picked from commit 56acdf4)
## Description This fixes a crash that can happen post-fork in fork-heavy workloads. ``` Error UnixSignal: Process terminated with SI_TKILL (SIGABRT) #0 0x00007ed5f6d869fc pthread_kill #1 0x00007ed5f6d32476 gsignal #2 0x00007ed5f6d187f3 abort #3 0x00007ed5f4fdf277 std::terminate #4 0x00007ed5c34737e6 PeriodicThread__after_fork #5 0x0000627d348a79b8 method_vectorcall_VARARGS_KEYWORDS (/usr/src/python/Objects/descrobject.c:365:14) #6 0x0000627d34847ea8 _PyObject_VectorcallTstate (/usr/src/python/./Include/internal/pycore_call.h:92:11) #7 0x0000627d34847ea8 PyObject_Vectorcall (/usr/src/python/Objects/call.c:325:12) #8 0x0000627d3486ec97 _PyEval_EvalFrameDefault (/usr/src/python/Python/bytecodes.c:2715:19) #9 0x0000627d34848e86 _PyObject_VectorcallTstate (/usr/src/python/./Include/internal/pycore_call.h:92:11) #10 0x0000627d34848e86 method_vectorcall (/usr/src/python/Objects/classobject.c:69:20) #11 0x0000627d34847a94 _PyObject_VectorcallTstate (/usr/src/python/./Include/internal/pycore_call.h:92:11) #12 0x00007ed5c3474631 std::thread::_State_impl<std::thread::_Invoker<std::tuple<_PeriodicThread_do_start(periodic_thread*, bool)::{lambda()#1}> > >::_M_run #13 0x00007ed5c3474e10 execute_native_thread_routine ``` _See IR-50207 for more details._ Co-authored-by: brettlangdon <brett.langdon@datadoghq.com>
|
This change is marked for backport to 4.7, but it conflicts with that branch. The command used to test backporting was |
Description
This fixes a crash that can happen post-fork in fork-heavy workloads.
See IR-50207 for more details.