[Profiler] Try fixing crashes in etw events based profiler#8673
Conversation
4d7d559 to
68ed0c4
Compare
BenchmarksBenchmark execution time: 2026-06-04 08:50:30 Comparing candidate commit d8e7605 in PR branch Found 0 performance improvements and 1 performance regressions! Performance is the same for 71 metrics, 0 unstable metrics, 60 known flaky benchmarks, 66 flaky benchmarks without significant changes.
|
This comment has been minimized.
This comment has been minimized.
Execution-Time Benchmarks Report ⏱️Execution-time results for samples comparing This PR (8673) and master. ✅ No regressions detected - check the details below Full Metrics ComparisonFakeDbCommand
HttpMessageHandler
Comparison explanationExecution-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:
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 chartsFakeDbCommand (.NET Framework 4.8)gantt
title Execution time (ms) FakeDbCommand (.NET Framework 4.8)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (8673) - mean (74ms) : 69, 80
master - mean (74ms) : 71, 78
section Bailout
This PR (8673) - mean (77ms) : 74, 80
master - mean (78ms) : 75, 80
section CallTarget+Inlining+NGEN
This PR (8673) - mean (1,110ms) : 1061, 1159
master - mean (1,105ms) : 1051, 1158
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 (8673) - mean (114ms) : 110, 118
master - mean (115ms) : 109, 121
section Bailout
This PR (8673) - mean (115ms) : 110, 120
master - mean (115ms) : 112, 118
section CallTarget+Inlining+NGEN
This PR (8673) - mean (789ms) : 767, 810
master - mean (798ms) : 772, 824
FakeDbCommand (.NET 6)gantt
title Execution time (ms) FakeDbCommand (.NET 6)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (8673) - mean (104ms) : 99, 110
master - mean (101ms) : 96, 105
section Bailout
This PR (8673) - mean (103ms) : 99, 108
master - mean (104ms) : 98, 109
section CallTarget+Inlining+NGEN
This PR (8673) - mean (947ms) : 905, 990
master - mean (944ms) : 904, 985
FakeDbCommand (.NET 8)gantt
title Execution time (ms) FakeDbCommand (.NET 8)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (8673) - mean (100ms) : 96, 103
master - mean (99ms) : 95, 103
section Bailout
This PR (8673) - mean (103ms) : 98, 108
master - mean (100ms) : 98, 102
section CallTarget+Inlining+NGEN
This PR (8673) - mean (825ms) : 795, 854
master - mean (821ms) : 780, 862
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 (8673) - mean (198ms) : 192, 204
master - mean (199ms) : 192, 206
section Bailout
This PR (8673) - mean (202ms) : 197, 207
master - mean (204ms) : 199, 208
section CallTarget+Inlining+NGEN
This PR (8673) - mean (1,199ms) : 1144, 1254
master - mean (1,201ms) : 1156, 1246
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 (8673) - mean (286ms) : 279, 292
master - mean (288ms) : 281, 294
section Bailout
This PR (8673) - mean (285ms) : 279, 291
master - mean (289ms) : 283, 294
section CallTarget+Inlining+NGEN
This PR (8673) - mean (954ms) : 935, 973
master - mean (965ms) : 947, 982
HttpMessageHandler (.NET 6)gantt
title Execution time (ms) HttpMessageHandler (.NET 6)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (8673) - mean (277ms) : 270, 283
master - mean (281ms) : 275, 287
section Bailout
This PR (8673) - mean (275ms) : 271, 280
master - mean (280ms) : 276, 283
section CallTarget+Inlining+NGEN
This PR (8673) - mean (1,152ms) : 1112, 1191
master - mean (1,166ms) : 1122, 1210
HttpMessageHandler (.NET 8)gantt
title Execution time (ms) HttpMessageHandler (.NET 8)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (8673) - mean (271ms) : 264, 279
master - mean (277ms) : 271, 283
section Bailout
This PR (8673) - mean (272ms) : 267, 277
master - mean (277ms) : 271, 282
section CallTarget+Inlining+NGEN
This PR (8673) - mean (1,028ms) : 991, 1064
master - mean (1,038ms) : 1004, 1072
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
68ed0c4 to
d8e7605
Compare
Summary of changes
This crash was detected by crashtracker:
Reason for change
In any case, the
pThiswhich represents theIpcServerinstance is leaked so it's not destroyed at any point. The only thing remaining, the_pLoggercould benullptr(shutdown, the smart pointer was destroyed) due to a race. This crash feels like an application start quickly followed by shutdown.One thing we can do, use
std::shared_ptrinstead.Implementation details
Use
std::shared_ptrto share the logger amongst components.Test coverage
Other details