Skip to content

Set benchmarking jobs as interruptible when outside master#7841

Merged
igoragoli merged 18 commits intomasterfrom
augusto/APMSP-2369.ensure-correct-interrupt-policy
Nov 27, 2025
Merged

Set benchmarking jobs as interruptible when outside master#7841
igoragoli merged 18 commits intomasterfrom
augusto/APMSP-2369.ensure-correct-interrupt-policy

Conversation

@igoragoli
Copy link
Contributor

@igoragoli igoragoli commented Nov 19, 2025

Summary of changes

  • Set benchmarking jobs as interruptible when outside master.

Also:

Reason for change

APMSP-2369 and #incident-45572

Why set jobs to interruptible? Because by doing so, we prevent redundant runs from overloading our APM runner capacity.

Why only outside of master? Because benchmarks on master are never redundant: we need every run on master to collect results and maintain a continuous performance history.

Implementation details

Test coverage

A dummy commit, a95a4f9, cancelling previous microbenchmarks from 1cd3cd2:

image

For macrobenchmarks:

image

Other details

@dd-trace-dotnet-ci-bot
Copy link

dd-trace-dotnet-ci-bot bot commented Nov 19, 2025

Execution-Time Benchmarks Report ⏱️

Execution-time results for samples comparing This PR (7841) and master.

✅ No regressions detected - check the details below

Full Metrics Comparison

FakeDbCommand

Metric Master (Mean ± 95% CI) Current (Mean ± 95% CI) Change Status
.NET Framework 4.8 - Baseline
duration74.85 ± (74.96 - 75.64) ms75.76 ± (75.53 - 76.46) ms+1.2%✅⬆️
.NET Framework 4.8 - Bailout
duration80.31 ± (79.99 - 80.61) ms78.77 ± (78.72 - 79.34) ms-1.9%
.NET Framework 4.8 - CallTarget+Inlining+NGEN
duration1074.43 ± (1074.43 - 1084.30) ms1066.84 ± (1069.83 - 1080.58) ms-0.7%
.NET Core 3.1 - Baseline
process.internal_duration_ms23.04 ± (22.95 - 23.12) ms22.84 ± (22.76 - 22.91) ms-0.9%
process.time_to_main_ms88.54 ± (88.17 - 88.90) ms87.00 ± (86.61 - 87.40) ms-1.7%
runtime.dotnet.exceptions.count0 ± (0 - 0)0 ± (0 - 0)+0.0%
runtime.dotnet.mem.committed10.93 ± (10.93 - 10.94) MB10.92 ± (10.92 - 10.92) MB-0.1%
runtime.dotnet.threads.count12 ± (12 - 12)12 ± (12 - 12)+0.0%
.NET Core 3.1 - Bailout
process.internal_duration_ms23.39 ± (23.26 - 23.52) ms22.73 ± (22.66 - 22.80) ms-2.8%
process.time_to_main_ms91.29 ± (90.73 - 91.85) ms88.21 ± (87.90 - 88.51) ms-3.4%
runtime.dotnet.exceptions.count0 ± (0 - 0)0 ± (0 - 0)+0.0%
runtime.dotnet.mem.committed10.97 ± (10.97 - 10.98) MB10.97 ± (10.96 - 10.97) MB-0.1%
runtime.dotnet.threads.count13 ± (13 - 13)13 ± (13 - 13)+0.0%
.NET Core 3.1 - CallTarget+Inlining+NGEN
process.internal_duration_ms222.62 ± (221.20 - 224.03) ms220.91 ± (219.53 - 222.29) ms-0.8%
process.time_to_main_ms501.21 ± (500.01 - 502.42) ms502.40 ± (501.20 - 503.60) ms+0.2%✅⬆️
runtime.dotnet.exceptions.count0 ± (0 - 0)0 ± (0 - 0)+0.0%
runtime.dotnet.mem.committed47.89 ± (47.87 - 47.91) MB47.98 ± (47.96 - 48.00) MB+0.2%✅⬆️
runtime.dotnet.threads.count28 ± (28 - 28)28 ± (28 - 28)-0.5%
.NET 6 - Baseline
process.internal_duration_ms21.89 ± (21.83 - 21.95) ms21.64 ± (21.58 - 21.69) ms-1.2%
process.time_to_main_ms77.12 ± (76.85 - 77.38) ms75.41 ± (75.07 - 75.76) ms-2.2%
runtime.dotnet.exceptions.count0 ± (0 - 0)0 ± (0 - 0)+0.0%
runtime.dotnet.mem.committed10.62 ± (10.62 - 10.63) MB10.62 ± (10.62 - 10.62) MB-0.0%
runtime.dotnet.threads.count10 ± (10 - 10)10 ± (10 - 10)+0.0%
.NET 6 - Bailout
process.internal_duration_ms21.83 ± (21.76 - 21.91) ms21.71 ± (21.65 - 21.78) ms-0.6%
process.time_to_main_ms78.86 ± (78.43 - 79.29) ms77.63 ± (77.28 - 77.98) ms-1.6%
runtime.dotnet.exceptions.count0 ± (0 - 0)0 ± (0 - 0)+0.0%
runtime.dotnet.mem.committed10.67 ± (10.67 - 10.67) MB10.66 ± (10.65 - 10.66) MB-0.1%
runtime.dotnet.threads.count11 ± (11 - 11)11 ± (11 - 11)+0.0%
.NET 6 - CallTarget+Inlining+NGEN
process.internal_duration_ms213.67 ± (212.58 - 214.76) ms210.41 ± (209.41 - 211.41) ms-1.5%
process.time_to_main_ms470.26 ± (469.31 - 471.21) ms465.70 ± (464.62 - 466.78) ms-1.0%
runtime.dotnet.exceptions.count0 ± (0 - 0)0 ± (0 - 0)+0.0%
runtime.dotnet.mem.committed48.07 ± (48.04 - 48.09) MB48.10 ± (48.08 - 48.13) MB+0.1%✅⬆️
runtime.dotnet.threads.count28 ± (28 - 28)28 ± (28 - 28)+0.0%✅⬆️
.NET 8 - Baseline
process.internal_duration_ms20.07 ± (20.00 - 20.13) ms19.71 ± (19.64 - 19.77) ms-1.8%
process.time_to_main_ms76.36 ± (76.04 - 76.69) ms74.54 ± (74.20 - 74.89) ms-2.4%
runtime.dotnet.exceptions.count0 ± (0 - 0)0 ± (0 - 0)+0.0%
runtime.dotnet.mem.committed7.67 ± (7.66 - 7.68) MB7.66 ± (7.65 - 7.66) MB-0.2%
runtime.dotnet.threads.count10 ± (10 - 10)10 ± (10 - 10)+0.0%
.NET 8 - Bailout
process.internal_duration_ms19.99 ± (19.93 - 20.05) ms19.82 ± (19.75 - 19.89) ms-0.8%
process.time_to_main_ms77.53 ± (77.21 - 77.85) ms76.09 ± (75.78 - 76.41) ms-1.8%
runtime.dotnet.exceptions.count0 ± (0 - 0)0 ± (0 - 0)+0.0%
runtime.dotnet.mem.committed7.71 ± (7.71 - 7.72) MB7.70 ± (7.69 - 7.70) MB-0.2%
runtime.dotnet.threads.count11 ± (11 - 11)11 ± (11 - 11)+0.0%
.NET 8 - CallTarget+Inlining+NGEN
process.internal_duration_ms195.14 ± (194.16 - 196.12) ms193.16 ± (192.14 - 194.18) ms-1.0%
process.time_to_main_ms458.74 ± (457.81 - 459.67) ms455.23 ± (454.24 - 456.23) ms-0.8%
runtime.dotnet.exceptions.count0 ± (0 - 0)0 ± (0 - 0)+0.0%
runtime.dotnet.mem.committed36.49 ± (36.45 - 36.53) MB36.38 ± (36.34 - 36.43) MB-0.3%
runtime.dotnet.threads.count27 ± (27 - 27)27 ± (27 - 27)+0.1%✅⬆️

HttpMessageHandler

Metric Master (Mean ± 95% CI) Current (Mean ± 95% CI) Change Status
.NET Framework 4.8 - Baseline
duration192.86 ± (192.88 - 193.63) ms193.78 ± (193.58 - 194.30) ms+0.5%✅⬆️
.NET Framework 4.8 - Bailout
duration196.21 ± (196.18 - 196.62) ms196.92 ± (196.73 - 197.29) ms+0.4%✅⬆️
.NET Framework 4.8 - CallTarget+Inlining+NGEN
duration1109.28 ± (1112.56 - 1121.66) ms1111.32 ± (1115.14 - 1123.97) ms+0.2%✅⬆️
.NET Core 3.1 - Baseline
process.internal_duration_ms188.04 ± (187.60 - 188.48) ms187.66 ± (187.32 - 187.99) ms-0.2%
process.time_to_main_ms80.64 ± (80.43 - 80.84) ms80.83 ± (80.63 - 81.03) ms+0.2%✅⬆️
runtime.dotnet.exceptions.count3 ± (3 - 3)3 ± (3 - 3)+0.0%
runtime.dotnet.mem.committed16.14 ± (16.11 - 16.17) MB16.10 ± (16.07 - 16.13) MB-0.3%
runtime.dotnet.threads.count19 ± (19 - 20)20 ± (20 - 20)+0.7%✅⬆️
.NET Core 3.1 - Bailout
process.internal_duration_ms188.03 ± (187.68 - 188.38) ms188.25 ± (187.91 - 188.59) ms+0.1%✅⬆️
process.time_to_main_ms81.97 ± (81.84 - 82.09) ms82.11 ± (81.96 - 82.25) ms+0.2%✅⬆️
runtime.dotnet.exceptions.count3 ± (3 - 3)3 ± (3 - 3)+0.0%
runtime.dotnet.mem.committed16.18 ± (16.14 - 16.21) MB16.14 ± (16.11 - 16.17) MB-0.2%
runtime.dotnet.threads.count21 ± (21 - 21)21 ± (20 - 21)-0.4%
.NET Core 3.1 - CallTarget+Inlining+NGEN
process.internal_duration_ms408.99 ± (405.98 - 412.00) ms398.94 ± (396.33 - 401.56) ms-2.5%
process.time_to_main_ms473.16 ± (471.91 - 474.40) ms473.61 ± (472.99 - 474.24) ms+0.1%✅⬆️
runtime.dotnet.exceptions.count3 ± (3 - 3)3 ± (3 - 3)+0.0%
runtime.dotnet.mem.committed58.94 ± (58.84 - 59.03) MB58.69 ± (58.56 - 58.83) MB-0.4%
runtime.dotnet.threads.count29 ± (29 - 29)29 ± (29 - 30)+0.1%✅⬆️
.NET 6 - Baseline
process.internal_duration_ms217.21 ± (215.39 - 219.02) ms192.62 ± (192.30 - 192.93) ms-11.3%
process.time_to_main_ms86.16 ± (84.75 - 87.58) ms70.17 ± (70.00 - 70.34) ms-18.6%
runtime.dotnet.exceptions.count4 ± (4 - 4)4 ± (4 - 4)+0.0%
runtime.dotnet.mem.committed16.18 ± (16.15 - 16.20) MB16.14 ± (16.01 - 16.28) MB-0.2%
runtime.dotnet.threads.count20 ± (20 - 20)19 ± (18 - 19)-4.8%
.NET 6 - Bailout
process.internal_duration_ms191.87 ± (191.51 - 192.24) ms191.70 ± (191.35 - 192.06) ms-0.1%
process.time_to_main_ms71.30 ± (71.14 - 71.46) ms70.89 ± (70.79 - 71.00) ms-0.6%
runtime.dotnet.exceptions.count4 ± (4 - 4)4 ± (4 - 4)+0.0%
runtime.dotnet.mem.committed16.17 ± (16.06 - 16.27) MB16.24 ± (16.10 - 16.37) MB+0.4%✅⬆️
runtime.dotnet.threads.count19 ± (19 - 20)19 ± (19 - 19)-0.5%
.NET 6 - CallTarget+Inlining+NGEN
process.internal_duration_ms404.19 ± (402.45 - 405.93) ms407.26 ± (405.39 - 409.12) ms+0.8%✅⬆️
process.time_to_main_ms441.00 ± (440.42 - 441.58) ms442.32 ± (441.75 - 442.89) ms+0.3%✅⬆️
runtime.dotnet.exceptions.count4 ± (4 - 4)4 ± (4 - 4)+0.0%
runtime.dotnet.mem.committed58.93 ± (58.78 - 59.08) MB59.02 ± (58.88 - 59.16) MB+0.2%✅⬆️
runtime.dotnet.threads.count30 ± (29 - 30)30 ± (29 - 30)+0.0%✅⬆️
.NET 8 - Baseline
process.internal_duration_ms190.46 ± (190.11 - 190.81) ms190.46 ± (190.09 - 190.83) ms+0.0%✅⬆️
process.time_to_main_ms69.59 ± (69.42 - 69.76) ms69.66 ± (69.45 - 69.86) ms+0.1%✅⬆️
runtime.dotnet.exceptions.count4 ± (4 - 4)4 ± (4 - 4)+0.0%
runtime.dotnet.mem.committed11.78 ± (11.74 - 11.81) MB11.72 ± (11.69 - 11.76) MB-0.4%
runtime.dotnet.threads.count18 ± (18 - 18)18 ± (18 - 18)+0.5%✅⬆️
.NET 8 - Bailout
process.internal_duration_ms189.51 ± (189.17 - 189.85) ms190.00 ± (189.74 - 190.25) ms+0.3%✅⬆️
process.time_to_main_ms70.46 ± (70.35 - 70.56) ms70.41 ± (70.31 - 70.51) ms-0.1%
runtime.dotnet.exceptions.count4 ± (4 - 4)4 ± (4 - 4)+0.0%
runtime.dotnet.mem.committed11.82 ± (11.78 - 11.86) MB11.76 ± (11.74 - 11.78) MB-0.5%
runtime.dotnet.threads.count19 ± (19 - 19)19 ± (19 - 19)+0.3%✅⬆️
.NET 8 - CallTarget+Inlining+NGEN
process.internal_duration_ms365.46 ± (364.06 - 366.86) ms366.79 ± (365.24 - 368.35) ms+0.4%✅⬆️
process.time_to_main_ms428.53 ± (427.84 - 429.22) ms430.36 ± (429.61 - 431.11) ms+0.4%✅⬆️
runtime.dotnet.exceptions.count4 ± (4 - 4)4 ± (4 - 4)+0.0%
runtime.dotnet.mem.committed47.85 ± (47.81 - 47.88) MB47.86 ± (47.83 - 47.90) MB+0.0%✅⬆️
runtime.dotnet.threads.count29 ± (29 - 29)29 ± (29 - 29)-0.6%
Comparison explanation

Execution-time benchmarks measure the whole time it takes to execute a program, and are intended to measure the one-off costs. Cases where the execution time results for the PR are worse than latest master results are highlighted in **red**. The following thresholds were used for comparing the execution times:

  • Welch test with statistical test for significance of 5%
  • Only results indicating a difference greater than 5% and 5 ms are considered.

Note that these results are based on a single point-in-time result for each branch. For full results, see the dashboard.

Graphs show the p99 interval based on the mean and StdDev of the test run, as well as the mean value of the run (shown as a diamond below the graph).

Duration charts
FakeDbCommand (.NET Framework 4.8)
gantt
    title Execution time (ms) FakeDbCommand (.NET Framework 4.8)
    dateFormat  x
    axisFormat %Q
    todayMarker off
    section Baseline
    This PR (7841) - mean (76ms)  : 71, 81
    master - mean (75ms)  : 70, 80

    section Bailout
    This PR (7841) - mean (79ms)  : 74, 84
    master - mean (80ms)  : 76, 85

    section CallTarget+Inlining+NGEN
    This PR (7841) - mean (1,075ms)  : 993, 1157
    master - mean (1,079ms)  : 1004, 1155

Loading
FakeDbCommand (.NET Core 3.1)
gantt
    title Execution time (ms) FakeDbCommand (.NET Core 3.1)
    dateFormat  x
    axisFormat %Q
    todayMarker off
    section Baseline
    This PR (7841) - mean (117ms)  : 110, 124
    master - mean (120ms)  : 112, 127

    section Bailout
    This PR (7841) - mean (118ms)  : 112, 125
    master - mean (123ms)  : 115, 131

    section CallTarget+Inlining+NGEN
    This PR (7841) - mean (758ms)  : 724, 792
    master - mean (764ms)  : 731, 796

Loading
FakeDbCommand (.NET 6)
gantt
    title Execution time (ms) FakeDbCommand (.NET 6)
    dateFormat  x
    axisFormat %Q
    todayMarker off
    section Baseline
    This PR (7841) - mean (104ms)  : 97, 111
    master - mean (106ms)  : 100, 112

    section Bailout
    This PR (7841) - mean (106ms)  : 100, 113
    master - mean (108ms)  : 102, 114

    section CallTarget+Inlining+NGEN
    This PR (7841) - mean (704ms)  : 677, 732
    master - mean (721ms)  : 694, 747

Loading
FakeDbCommand (.NET 8)
gantt
    title Execution time (ms) FakeDbCommand (.NET 8)
    dateFormat  x
    axisFormat %Q
    todayMarker off
    section Baseline
    This PR (7841) - mean (103ms)  : 97, 109
    master - mean (105ms)  : 99, 112

    section Bailout
    This PR (7841) - mean (105ms)  : 98, 111
    master - mean (106ms)  : 100, 112

    section CallTarget+Inlining+NGEN
    This PR (7841) - mean (680ms)  : 647, 713
    master - mean (696ms)  : 667, 725

Loading
HttpMessageHandler (.NET Framework 4.8)
gantt
    title Execution time (ms) HttpMessageHandler (.NET Framework 4.8)
    dateFormat  x
    axisFormat %Q
    todayMarker off
    section Baseline
    This PR (7841) - mean (194ms)  : 190, 198
    master - mean (193ms)  : 189, 197

    section Bailout
    This PR (7841) - mean (197ms)  : 194, 200
    master - mean (196ms)  : 194, 199

    section CallTarget+Inlining+NGEN
    This PR (7841) - mean (1,120ms)  : 1054, 1185
    master - mean (1,117ms)  : 1052, 1183

Loading
HttpMessageHandler (.NET Core 3.1)
gantt
    title Execution time (ms) HttpMessageHandler (.NET Core 3.1)
    dateFormat  x
    axisFormat %Q
    todayMarker off
    section Baseline
    This PR (7841) - mean (277ms)  : 272, 282
    master - mean (278ms)  : 271, 284

    section Bailout
    This PR (7841) - mean (279ms)  : 274, 283
    master - mean (278ms)  : 274, 282

    section CallTarget+Inlining+NGEN
    This PR (7841) - mean (912ms)  : 863, 961
    master - mean (914ms)  : 849, 978

Loading
HttpMessageHandler (.NET 6)
gantt
    title Execution time (ms) HttpMessageHandler (.NET 6)
    dateFormat  x
    axisFormat %Q
    todayMarker off
    section Baseline
    This PR (7841) - mean (271ms)  : 267, 276
    master - mean (313ms)  : 265, 361

    section Bailout
    This PR (7841) - mean (271ms)  : 267, 275
    master - mean (271ms)  : 264, 278

    section CallTarget+Inlining+NGEN
    This PR (7841) - mean (885ms)  : 846, 924
    master - mean (878ms)  : 843, 913

Loading
HttpMessageHandler (.NET 8)
gantt
    title Execution time (ms) HttpMessageHandler (.NET 8)
    dateFormat  x
    axisFormat %Q
    todayMarker off
    section Baseline
    This PR (7841) - mean (270ms)  : 264, 275
    master - mean (270ms)  : 265, 275

    section Bailout
    This PR (7841) - mean (270ms)  : 267, 273
    master - mean (270ms)  : 266, 274

    section CallTarget+Inlining+NGEN
    This PR (7841) - mean (828ms)  : 812, 844
    master - mean (824ms)  : 807, 842

Loading

@pr-commenter
Copy link

pr-commenter bot commented Nov 19, 2025

Benchmarks

Benchmarks Report for benchmark platform 🐌

Benchmarks for #7841 compared to master:

  • 5 benchmarks are faster, with geometric mean 1.375
  • 5 benchmarks have fewer allocations
  • 3 benchmarks have more allocations

The following thresholds were used for comparing the benchmark speeds:

  • Mann–Whitney U test with statistical test for significance of 5%
  • Only results indicating a difference greater than 10% and 0.3 ns are considered.

Allocation changes below 0.5% are ignored.

Benchmark details

Benchmarks.Trace.ActivityBenchmark - Same speed ✔️ Fewer allocations 🎉

Fewer allocations 🎉 in #7841

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.ActivityBenchmark.StartStopWithChild‑net472 6.09 KB 6 KB -90 B -1.48%

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master StartStopWithChild net6.0 10.9μs 57.2ns 297ns 0 0 0 5.53 KB
master StartStopWithChild netcoreapp3.1 13.5μs 34.9ns 126ns 0 0 0 5.68 KB
master StartStopWithChild net472 21.6μs 118ns 710ns 0.888 0.222 0 6.09 KB
#7841 StartStopWithChild net6.0 10.1μs 56.8ns 373ns 0 0 0 5.5 KB
#7841 StartStopWithChild netcoreapp3.1 14.2μs 72.4ns 339ns 0 0 0 5.71 KB
#7841 StartStopWithChild net472 22.1μs 118ns 660ns 0.996 0.332 0.111 6 KB
Benchmarks.Trace.AgentWriterBenchmark - Unknown 🤷 Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master WriteAndFlushEnrichedTraces net6.0 N/A N/A N/A NaN NaN NaN 0 b
master WriteAndFlushEnrichedTraces netcoreapp3.1 N/A N/A N/A NaN NaN NaN 0 b
master WriteAndFlushEnrichedTraces net472 N/A N/A N/A NaN NaN NaN 0 b
#7841 WriteAndFlushEnrichedTraces net6.0 N/A N/A N/A NaN NaN NaN 0 b
#7841 WriteAndFlushEnrichedTraces netcoreapp3.1 N/A N/A N/A NaN NaN NaN 0 b
#7841 WriteAndFlushEnrichedTraces net472 N/A N/A N/A NaN NaN NaN 0 b
Benchmarks.Trace.Asm.AppSecBodyBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master AllCycleSimpleBody net6.0 1.07μs 0.68ns 2.54ns 0 0 0 1.22 KB
master AllCycleSimpleBody netcoreapp3.1 1.38μs 7.81ns 55.8ns 0 0 0 1.2 KB
master AllCycleSimpleBody net472 1.07μs 0.45ns 1.69ns 0.192 0 0 1.23 KB
master AllCycleMoreComplexBody net6.0 7.27μs 8.12ns 30.4ns 0 0 0 4.72 KB
master AllCycleMoreComplexBody netcoreapp3.1 8.76μs 46.1ns 226ns 0 0 0 4.62 KB
master AllCycleMoreComplexBody net472 7.56μs 5.77ns 22.4ns 0.717 0 0 4.74 KB
master ObjectExtractorSimpleBody net6.0 320ns 1.82ns 12.1ns 0 0 0 280 B
master ObjectExtractorSimpleBody netcoreapp3.1 393ns 2.1ns 10.7ns 0 0 0 272 B
master ObjectExtractorSimpleBody net472 299ns 0.218ns 0.815ns 0.0443 0 0 281 B
master ObjectExtractorMoreComplexBody net6.0 6.36μs 29.6ns 119ns 0 0 0 3.78 KB
master ObjectExtractorMoreComplexBody netcoreapp3.1 7.78μs 34ns 132ns 0 0 0 3.69 KB
master ObjectExtractorMoreComplexBody net472 6.67μs 1.84ns 7.11ns 0.6 0 0 3.8 KB
#7841 AllCycleSimpleBody net6.0 1.07μs 0.965ns 3.74ns 0 0 0 1.22 KB
#7841 AllCycleSimpleBody netcoreapp3.1 1.45μs 8.21ns 56.9ns 0 0 0 1.2 KB
#7841 AllCycleSimpleBody net472 1.04μs 0.106ns 0.366ns 0.192 0 0 1.23 KB
#7841 AllCycleMoreComplexBody net6.0 7.13μs 34ns 132ns 0 0 0 4.72 KB
#7841 AllCycleMoreComplexBody netcoreapp3.1 8.94μs 43.6ns 180ns 0 0 0 4.62 KB
#7841 AllCycleMoreComplexBody net472 7.69μs 7.82ns 30.3ns 0.733 0 0 4.74 KB
#7841 ObjectExtractorSimpleBody net6.0 323ns 1.59ns 6.92ns 0 0 0 280 B
#7841 ObjectExtractorSimpleBody netcoreapp3.1 397ns 1.23ns 4.76ns 0 0 0 272 B
#7841 ObjectExtractorSimpleBody net472 301ns 0.356ns 1.38ns 0.0443 0 0 281 B
#7841 ObjectExtractorMoreComplexBody net6.0 6.44μs 32.2ns 137ns 0 0 0 3.78 KB
#7841 ObjectExtractorMoreComplexBody netcoreapp3.1 7.86μs 38.5ns 159ns 0 0 0 3.69 KB
#7841 ObjectExtractorMoreComplexBody net472 6.84μs 7.94ns 30.8ns 0.585 0 0 3.8 KB
Benchmarks.Trace.Asm.AppSecEncoderBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EncodeArgs net6.0 79.3μs 345ns 1.29μs 0 0 0 32.4 KB
master EncodeArgs netcoreapp3.1 97.5μs 273ns 1.06μs 0 0 0 32.4 KB
master EncodeArgs net472 110μs 28.3ns 110ns 4.97 0 0 32.51 KB
master EncodeLegacyArgs net6.0 149μs 17.2ns 64.5ns 0 0 0 2.15 KB
master EncodeLegacyArgs netcoreapp3.1 198μs 449ns 1.74μs 0 0 0 2.14 KB
master EncodeLegacyArgs net472 262μs 46ns 178ns 0 0 0 2.16 KB
#7841 EncodeArgs net6.0 76.3μs 128ns 480ns 0 0 0 32.4 KB
#7841 EncodeArgs netcoreapp3.1 97.6μs 283ns 1.06μs 0 0 0 32.4 KB
#7841 EncodeArgs net472 109μs 18.8ns 72.7ns 4.92 0 0 32.51 KB
#7841 EncodeLegacyArgs net6.0 143μs 37.2ns 134ns 0 0 0 2.15 KB
#7841 EncodeLegacyArgs netcoreapp3.1 201μs 501ns 1.94μs 0 0 0 2.14 KB
#7841 EncodeLegacyArgs net472 266μs 342ns 1.32μs 0 0 0 2.16 KB
Benchmarks.Trace.Asm.AppSecWafBenchmark - Same speed ✔️ Fewer allocations 🎉

Fewer allocations 🎉 in #7841

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.Asm.AppSecWafBenchmark.RunWafRealisticBenchmarkWithAttack‑net6.0 3.17 KB 2.83 KB -336 B -10.61%

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master RunWafRealisticBenchmark net6.0 430μs 1.21μs 4.35μs 0 0 0 5.48 KB
master RunWafRealisticBenchmark netcoreapp3.1 527μs 11.5μs 107μs 0 0 0 4.58 KB
master RunWafRealisticBenchmark net472 501μs 603ns 2.26μs 0 0 0 0 b
master RunWafRealisticBenchmarkWithAttack net6.0 318μs 794ns 2.75μs 0 0 0 3.17 KB
master RunWafRealisticBenchmarkWithAttack netcoreapp3.1 377μs 3.98μs 38.6μs 0 0 0 2.32 KB
master RunWafRealisticBenchmarkWithAttack net472 371μs 192ns 691ns 0 0 0 0 b
#7841 RunWafRealisticBenchmark net6.0 424μs 599ns 2.07μs 0 0 0 5.48 KB
#7841 RunWafRealisticBenchmark netcoreapp3.1 479μs 3.13μs 30μs 0 0 0 4.58 KB
#7841 RunWafRealisticBenchmark net472 501μs 563ns 2.11μs 0 0 0 0 b
#7841 RunWafRealisticBenchmarkWithAttack net6.0 329μs 1.87μs 13.2μs 0 0 0 2.83 KB
#7841 RunWafRealisticBenchmarkWithAttack netcoreapp3.1 332μs 1.74μs 8.52μs 0 0 0 2.32 KB
#7841 RunWafRealisticBenchmarkWithAttack net472 370μs 133ns 460ns 0 0 0 0 b
Benchmarks.Trace.AspNetCoreBenchmark - Faster 🎉 Same allocations ✔️

Faster 🎉 in #7841

Benchmark base/diff Base Median (ns) Diff Median (ns) Modality
Benchmarks.Trace.AspNetCoreBenchmark.SendRequest‑net6.0 1.253 76,894.58 61,389.71

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master SendRequest net6.0 77.4μs 242ns 939ns 0 0 0 14.52 KB
master SendRequest netcoreapp3.1 71.5μs 376ns 1.84μs 0 0 0 17.42 KB
master SendRequest net472 0.00167ns 0.00105ns 0.00408ns 0 0 0 0 b
#7841 SendRequest net6.0 61.5μs 49.4ns 191ns 0 0 0 14.52 KB
#7841 SendRequest netcoreapp3.1 71.7μs 132ns 493ns 0 0 0 17.42 KB
#7841 SendRequest net472 0.145ns 0.00283ns 0.0106ns 0 0 0 0 b
Benchmarks.Trace.CharSliceBenchmark - Faster 🎉 More allocations ⚠️

Faster 🎉 in #7841

Benchmark base/diff Base Median (ns) Diff Median (ns) Modality
Benchmarks.Trace.CharSliceBenchmark.OriginalCharSlice‑netcoreapp3.1 1.851 3,922,200.00 2,118,900.00
Benchmarks.Trace.CharSliceBenchmark.OptimizedCharSlice‑netcoreapp3.1 1.626 2,759,450.00 1,696,700.00
Benchmarks.Trace.CharSliceBenchmark.OptimizedCharSliceWithPool‑net6.0 1.149 1,157,350.00 1,007,050.00

More allocations ⚠️ in #7841

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.CharSliceBenchmark.OptimizedCharSlice‑net6.0 352 B 640 B 288 B 81.82%

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master OriginalCharSlice net6.0 2.01ms 580ns 2.09μs 0 0 0 640.3 KB
master OriginalCharSlice netcoreapp3.1 3.92ms 1.18μs 4.58μs 0 0 0 640.1 KB
master OriginalCharSlice net472 2.67ms 1.12μs 4.05μs 0 0 0 647.17 KB
master OptimizedCharSlice net6.0 1.56ms 1.06μs 3.97μs 0 0 0 352 B
master OptimizedCharSlice netcoreapp3.1 2.76ms 661ns 2.47μs 0 0 0 104 B
master OptimizedCharSlice net472 2.04ms 1.65μs 6.38μs 0 0 0 0 b
master OptimizedCharSliceWithPool net6.0 1.16ms 1.1μs 4.11μs 0 0 0 640 B
master OptimizedCharSliceWithPool netcoreapp3.1 1.91ms 1.38μs 5.36μs 0 0 0 104 B
master OptimizedCharSliceWithPool net472 1.13ms 739ns 2.86μs 0 0 0 0 b
#7841 OriginalCharSlice net6.0 1.95ms 2.9μs 11.2μs 0 0 0 640.64 KB
#7841 OriginalCharSlice netcoreapp3.1 2.12ms 1.15μs 7.52μs 0 0 0 640.1 KB
#7841 OriginalCharSlice net472 2.61ms 792ns 2.96μs 0 0 0 647.17 KB
#7841 OptimizedCharSlice net6.0 1.45ms 770ns 2.98μs 0 0 0 640 B
#7841 OptimizedCharSlice netcoreapp3.1 1.7ms 6.55μs 42.9μs 0 0 0 104 B
#7841 OptimizedCharSlice net472 2.01ms 924ns 3.58μs 0 0 0 0 b
#7841 OptimizedCharSliceWithPool net6.0 1.01ms 516ns 1.93μs 0 0 0 640 B
#7841 OptimizedCharSliceWithPool netcoreapp3.1 1.86ms 1.96μs 7.59μs 0 0 0 104 B
#7841 OptimizedCharSliceWithPool net472 1.18ms 550ns 2.13μs 0 0 0 0 b
Benchmarks.Trace.CIVisibilityProtocolWriterBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master WriteAndFlushEnrichedTraces net6.0 771μs 3.65μs 14.1μs 0 0 0 41.83 KB
master WriteAndFlushEnrichedTraces netcoreapp3.1 685μs 1.01μs 3.77μs 0 0 0 41.94 KB
master WriteAndFlushEnrichedTraces net472 867μs 4.4μs 21.6μs 4.46 0 0 55.63 KB
#7841 WriteAndFlushEnrichedTraces net6.0 689μs 3.35μs 13.4μs 0 0 0 41.83 KB
#7841 WriteAndFlushEnrichedTraces netcoreapp3.1 680μs 3.48μs 16.3μs 0 0 0 41.96 KB
#7841 WriteAndFlushEnrichedTraces net472 803μs 2.9μs 10.9μs 4.46 0 0 55.84 KB
Benchmarks.Trace.DbCommandBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master ExecuteNonQuery net6.0 1.86μs 6.69ns 25ns 0 0 0 1.02 KB
master ExecuteNonQuery netcoreapp3.1 2.58μs 13ns 59.7ns 0 0 0 1.02 KB
master ExecuteNonQuery net472 2.79μs 6.36ns 24.6ns 0.154 0 0 987 B
#7841 ExecuteNonQuery net6.0 1.95μs 0.825ns 3.09ns 0 0 0 1.02 KB
#7841 ExecuteNonQuery netcoreapp3.1 2.58μs 10ns 38.9ns 0 0 0 1.02 KB
#7841 ExecuteNonQuery net472 2.83μs 4.33ns 16.8ns 0.156 0 0 987 B
Benchmarks.Trace.ElasticsearchBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master CallElasticsearch net6.0 1.77μs 2.66ns 10.3ns 0 0 0 1.03 KB
master CallElasticsearch netcoreapp3.1 2.32μs 7.37ns 28.5ns 0 0 0 1.03 KB
master CallElasticsearch net472 3.49μs 7.93ns 30.7ns 0.159 0 0 1.04 KB
master CallElasticsearchAsync net6.0 1.8μs 9.28ns 41.5ns 0 0 0 1.01 KB
master CallElasticsearchAsync netcoreapp3.1 2.38μs 11.4ns 48.5ns 0 0 0 1.08 KB
master CallElasticsearchAsync net472 3.73μs 5.03ns 19.5ns 0.166 0 0 1.1 KB
#7841 CallElasticsearch net6.0 1.71μs 9.24ns 49.8ns 0 0 0 1.03 KB
#7841 CallElasticsearch netcoreapp3.1 2.41μs 11.6ns 46.5ns 0 0 0 1.03 KB
#7841 CallElasticsearch net472 3.42μs 3.21ns 12ns 0.157 0 0 1.04 KB
#7841 CallElasticsearchAsync net6.0 1.81μs 8.38ns 33.5ns 0 0 0 1.01 KB
#7841 CallElasticsearchAsync netcoreapp3.1 2.4μs 12.1ns 51.2ns 0 0 0 1.08 KB
#7841 CallElasticsearchAsync net472 3.67μs 5.38ns 20.8ns 0.165 0 0 1.1 KB
Benchmarks.Trace.GraphQLBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master ExecuteAsync net6.0 1.94μs 4.71ns 18.3ns 0 0 0 952 B
master ExecuteAsync netcoreapp3.1 2.45μs 11.9ns 49.1ns 0 0 0 952 B
master ExecuteAsync net472 2.61μs 5.42ns 21ns 0.142 0 0 915 B
#7841 ExecuteAsync net6.0 1.81μs 8.52ns 33ns 0 0 0 952 B
#7841 ExecuteAsync netcoreapp3.1 2.4μs 7.62ns 29.5ns 0 0 0 952 B
#7841 ExecuteAsync net472 2.65μs 6.59ns 25.5ns 0.145 0 0 915 B
Benchmarks.Trace.HttpClientBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master SendAsync net6.0 6.99μs 21.3ns 82.5ns 0 0 0 2.36 KB
master SendAsync netcoreapp3.1 8.59μs 32.3ns 125ns 0 0 0 2.9 KB
master SendAsync net472 12.2μs 9.13ns 34.2ns 0.486 0 0 3.18 KB
#7841 SendAsync net6.0 6.94μs 20.4ns 79.1ns 0 0 0 2.36 KB
#7841 SendAsync netcoreapp3.1 8.78μs 25.6ns 99.2ns 0 0 0 2.9 KB
#7841 SendAsync net472 12.3μs 8.45ns 32.7ns 0.492 0 0 3.18 KB
Benchmarks.Trace.Iast.StringAspectsBenchmark - Faster 🎉 More allocations ⚠️

Faster 🎉 in #7841

Benchmark base/diff Base Median (ns) Diff Median (ns) Modality
Benchmarks.Trace.Iast.StringAspectsBenchmark.StringConcatBenchmark‑net6.0 1.133 49,550.00 43,750.00

More allocations ⚠️ in #7841

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.Iast.StringAspectsBenchmark.StringConcatAspectBenchmark‑netcoreapp3.1 258.27 KB 273.71 KB 15.44 KB 5.98%
Benchmarks.Trace.Iast.StringAspectsBenchmark.StringConcatAspectBenchmark‑net6.0 275.34 KB 278.9 KB 3.56 KB 1.29%

Fewer allocations 🎉 in #7841

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.Iast.StringAspectsBenchmark.StringConcatAspectBenchmark‑net472 289.19 KB 286.72 KB -2.47 KB -0.85%
Benchmarks.Trace.Iast.StringAspectsBenchmark.StringConcatBenchmark‑netcoreapp3.1 43.19 KB 42.68 KB -512 B -1.19%
Benchmarks.Trace.Iast.StringAspectsBenchmark.StringConcatBenchmark‑net6.0 45.32 KB 43.81 KB -1.51 KB -3.34%

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master StringConcatBenchmark net6.0 50.8μs 414ns 3.97μs 0 0 0 45.32 KB
master StringConcatBenchmark netcoreapp3.1 50μs 291ns 2.23μs 0 0 0 43.19 KB
master StringConcatBenchmark net472 57.2μs 157ns 586ns 0 0 0 57.34 KB
master StringConcatAspectBenchmark net6.0 504μs 1.69μs 8.08μs 0 0 0 275.34 KB
master StringConcatAspectBenchmark netcoreapp3.1 491μs 1.28μs 6.38μs 0 0 0 258.27 KB
master StringConcatAspectBenchmark net472 411μs 2.2μs 11.6μs 0 0 0 289.19 KB
#7841 StringConcatBenchmark net6.0 44.3μs 251ns 2.13μs 0 0 0 43.81 KB
#7841 StringConcatBenchmark netcoreapp3.1 49.1μs 256ns 1.64μs 0 0 0 42.68 KB
#7841 StringConcatBenchmark net472 56.2μs 249ns 963ns 0 0 0 57.34 KB
#7841 StringConcatAspectBenchmark net6.0 479μs 1.06μs 3.67μs 0 0 0 278.9 KB
#7841 StringConcatAspectBenchmark netcoreapp3.1 526μs 2.57μs 10.9μs 0 0 0 273.71 KB
#7841 StringConcatAspectBenchmark net472 400μs 2.02μs 8.8μs 0 0 0 286.72 KB
Benchmarks.Trace.ILoggerBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EnrichedLog net6.0 2.77μs 3.78ns 14.6ns 0 0 0 1.7 KB
master EnrichedLog netcoreapp3.1 3.57μs 18.9ns 98.4ns 0 0 0 1.7 KB
master EnrichedLog net472 4μs 5.03ns 19.5ns 0.241 0 0 1.64 KB
#7841 EnrichedLog net6.0 2.75μs 13.7ns 61.4ns 0 0 0 1.71 KB
#7841 EnrichedLog netcoreapp3.1 3.75μs 2.87ns 10.7ns 0 0 0 1.7 KB
#7841 EnrichedLog net472 3.89μs 5.74ns 22.2ns 0.251 0 0 1.64 KB
Benchmarks.Trace.Log4netBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EnrichedLog net6.0 128μs 623ns 2.65μs 0 0 0 4.31 KB
master EnrichedLog netcoreapp3.1 129μs 322ns 1.16μs 0 0 0 4.31 KB
master EnrichedLog net472 168μs 137ns 530ns 0 0 0 4.52 KB
#7841 EnrichedLog net6.0 124μs 267ns 1.03μs 0 0 0 4.31 KB
#7841 EnrichedLog netcoreapp3.1 128μs 61ns 220ns 0 0 0 4.31 KB
#7841 EnrichedLog net472 169μs 270ns 1.05μs 0 0 0 4.52 KB
Benchmarks.Trace.NLogBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EnrichedLog net6.0 5.07μs 8.02ns 31.1ns 0 0 0 2.26 KB
master EnrichedLog netcoreapp3.1 6.8μs 27.1ns 105ns 0 0 0 2.26 KB
master EnrichedLog net472 7.78μs 7.7ns 29.8ns 0.307 0 0 2.08 KB
#7841 EnrichedLog net6.0 5.12μs 13ns 50.4ns 0 0 0 2.26 KB
#7841 EnrichedLog netcoreapp3.1 6.92μs 10.9ns 42.3ns 0 0 0 2.26 KB
#7841 EnrichedLog net472 7.56μs 11.2ns 43.6ns 0.302 0 0 2.08 KB
Benchmarks.Trace.RedisBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master SendReceive net6.0 1.95μs 9.1ns 34.1ns 0 0 0 1.2 KB
master SendReceive netcoreapp3.1 2.73μs 8.53ns 33ns 0 0 0 1.2 KB
master SendReceive net472 3.09μs 5.53ns 21.4ns 0.185 0 0 1.2 KB
#7841 SendReceive net6.0 1.95μs 2.49ns 9.64ns 0 0 0 1.2 KB
#7841 SendReceive netcoreapp3.1 2.55μs 10.4ns 40.2ns 0 0 0 1.2 KB
#7841 SendReceive net472 3.32μs 3.44ns 12.9ns 0.183 0 0 1.2 KB
Benchmarks.Trace.SerilogBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EnrichedLog net6.0 4.4μs 5.62ns 21.8ns 0 0 0 1.58 KB
master EnrichedLog netcoreapp3.1 5.86μs 10.4ns 40.2ns 0 0 0 1.63 KB
master EnrichedLog net472 6.61μs 8.71ns 33.7ns 0.295 0 0 2.03 KB
#7841 EnrichedLog net6.0 4.47μs 9.37ns 36.3ns 0 0 0 1.58 KB
#7841 EnrichedLog netcoreapp3.1 5.7μs 19.7ns 76.4ns 0 0 0 1.63 KB
#7841 EnrichedLog net472 6.47μs 11.1ns 43ns 0.293 0 0 2.03 KB
Benchmarks.Trace.SpanBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master StartFinishSpan net6.0 806ns 0.304ns 1.18ns 0 0 0 576 B
master StartFinishSpan netcoreapp3.1 981ns 5.14ns 24.7ns 0 0 0 576 B
master StartFinishSpan net472 934ns 0.239ns 0.924ns 0.0899 0 0 578 B
master StartFinishScope net6.0 955ns 3.17ns 12.3ns 0 0 0 696 B
master StartFinishScope netcoreapp3.1 1.14μs 6.08ns 31ns 0 0 0 696 B
master StartFinishScope net472 1.1μs 0.221ns 0.828ns 0.1 0 0 658 B
master StartFinishTwoScopes net6.0 1.82μs 0.764ns 2.96ns 0 0 0 1.19 KB
master StartFinishTwoScopes netcoreapp3.1 2.26μs 11.3ns 49.2ns 0 0 0 1.19 KB
master StartFinishTwoScopes net472 2.12μs 2.43ns 9.42ns 0.17 0 0 1.08 KB
#7841 StartFinishSpan net6.0 844ns 0.168ns 0.649ns 0 0 0 576 B
#7841 StartFinishSpan netcoreapp3.1 996ns 4.79ns 20.9ns 0 0 0 576 B
#7841 StartFinishSpan net472 907ns 1.29ns 5.01ns 0.0873 0 0 578 B
#7841 StartFinishScope net6.0 951ns 4.41ns 19.2ns 0 0 0 696 B
#7841 StartFinishScope netcoreapp3.1 1.17μs 5.87ns 26.9ns 0 0 0 696 B
#7841 StartFinishScope net472 1.1μs 0.493ns 1.91ns 0.0995 0 0 658 B
#7841 StartFinishTwoScopes net6.0 1.74μs 8.52ns 37.1ns 0 0 0 1.19 KB
#7841 StartFinishTwoScopes netcoreapp3.1 2.25μs 12ns 63.8ns 0 0 0 1.19 KB
#7841 StartFinishTwoScopes net472 2.12μs 3.29ns 12.7ns 0.171 0 0 1.08 KB
Benchmarks.Trace.TraceAnnotationsBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master RunOnMethodBegin net6.0 1.13μs 5.2ns 20.8ns 0 0 0 696 B
master RunOnMethodBegin netcoreapp3.1 1.41μs 6.92ns 29.4ns 0 0 0 696 B
master RunOnMethodBegin net472 1.46μs 0.161ns 0.601ns 0.102 0 0 658 B
#7841 RunOnMethodBegin net6.0 1.1μs 5.18ns 20.7ns 0 0 0 696 B
#7841 RunOnMethodBegin netcoreapp3.1 1.49μs 7.54ns 34.5ns 0 0 0 696 B
#7841 RunOnMethodBegin net472 1.46μs 1.17ns 4.23ns 0.102 0 0 658 B

@igoragoli igoragoli marked this pull request as ready for review November 19, 2025 09:31
@igoragoli igoragoli requested a review from a team as a code owner November 19, 2025 09:32
Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Copy link
Collaborator

@NachoEchevarria NachoEchevarria left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@igoragoli igoragoli requested a review from andrewlock November 20, 2025 15:04
@igoragoli
Copy link
Contributor Author

igoragoli commented Nov 21, 2025

Microbenchmarks were already not running on tags because they couldn't find an open PR: https://gitlab.ddbuild.io/DataDog/apm-reliability/dd-trace-dotnet/-/jobs/1238672257

But now we enforce it through code, and the job won't even start.

Copy link
Member

@andrewlock andrewlock left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@igoragoli igoragoli enabled auto-merge (squash) November 27, 2025 09:53
@datadog-official
Copy link

datadog-official bot commented Nov 27, 2025

⚠️ Tests

⚠️ Warnings

🧪 1 Test failed

SubmitsTraces from Datadog.Trace.ClrProfiler.IntegrationTests.StackExchangeRedisTests (Datadog)
Results do not match.
Differences:
Received: StackExchangeRedisTests.Latest.SchemaV1.received.txt
Verified: StackExchangeRedisTests.Latest.SchemaV1.verified.txt
Compare Result:
  [
    {
      TraceId: Id_1,
      SpanId: Id_2,
      Name: redis.command,
...

ℹ️ Info

❄️ No new flaky tests detected

This comment will be updated automatically if new data arrives.
🔗 Commit SHA: 93f4270 | Docs | Datadog PR Page | Was this helpful? Give us feedback!

@igoragoli igoragoli merged commit 2a914f3 into master Nov 27, 2025
145 of 149 checks passed
@igoragoli igoragoli deleted the augusto/APMSP-2369.ensure-correct-interrupt-policy branch November 27, 2025 15:33
@github-actions github-actions bot added this to the vNext-v3 milestone Nov 27, 2025
@bouwkast bouwkast added the area:builds project files, build scripts, pipelines, versioning, releases, packages label Dec 15, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:builds project files, build scripts, pipelines, versioning, releases, packages

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants