Ensure we wrap the process path in quotes before running it#8613
Conversation
13a0d9e to
9bd1e8c
Compare
BenchmarksBenchmark execution time: 2026-05-12 15:27:47 Comparing candidate commit 9bd1e8c in PR branch Some scenarios are present only in baseline or only in candidate runs. If you didn't create or remove some scenarios in your branch, this maybe a sign of crashed benchmarks 💥💥💥 Scenarios present only in baseline:
Found 4 performance improvements and 2 performance regressions! Performance is the same for 48 metrics, 18 unstable metrics, 90 known flaky benchmarks, 36 flaky benchmarks without significant changes.
|
Execution-Time Benchmarks Report ⏱️Execution-time results for samples comparing This PR (8613) 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 (8613) - mean (75ms) : 71, 79
master - mean (73ms) : 70, 76
section Bailout
This PR (8613) - mean (78ms) : 75, 82
master - mean (80ms) : 75, 84
section CallTarget+Inlining+NGEN
This PR (8613) - mean (1,097ms) : 1041, 1153
master - mean (1,100ms) : 1042, 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 (8613) - mean (118ms) : 111, 124
master - mean (117ms) : 110, 123
section Bailout
This PR (8613) - mean (116ms) : 111, 120
master - mean (117ms) : 113, 122
section CallTarget+Inlining+NGEN
This PR (8613) - mean (788ms) : 759, 817
master - mean (792ms) : 759, 825
FakeDbCommand (.NET 6)gantt
title Execution time (ms) FakeDbCommand (.NET 6)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (8613) - mean (103ms) : 97, 109
master - mean (102ms) : 98, 105
section Bailout
This PR (8613) - mean (105ms) : 100, 111
master - mean (104ms) : 98, 110
section CallTarget+Inlining+NGEN
This PR (8613) - mean (948ms) : 914, 982
master - mean (947ms) : 911, 982
FakeDbCommand (.NET 8)gantt
title Execution time (ms) FakeDbCommand (.NET 8)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (8613) - mean (100ms) : 96, 104
master - mean (101ms) : 97, 104
section Bailout
This PR (8613) - mean (104ms) : 98, 110
master - mean (105ms) : 99, 111
section CallTarget+Inlining+NGEN
This PR (8613) - mean (830ms) : 784, 875
master - mean (826ms) : 783, 870
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 (8613) - mean (204ms) : 199, 209
master - mean (194ms) : 190, 199
section Bailout
This PR (8613) - mean (206ms) : 203, 210
master - mean (198ms) : 196, 200
section CallTarget+Inlining+NGEN
This PR (8613) - mean (1,226ms) : 1164, 1288
master - mean (1,221ms) : 1154, 1287
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 (8613) - mean (300ms) : 295, 305
master - mean (298ms) : 290, 306
section Bailout
This PR (8613) - mean (298ms) : 293, 304
master - mean (290ms) : 284, 296
section CallTarget+Inlining+NGEN
This PR (8613) - mean (941ms) : 899, 983
master - mean (958ms) : 941, 976
HttpMessageHandler (.NET 6)gantt
title Execution time (ms) HttpMessageHandler (.NET 6)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (8613) - mean (270ms) : 264, 275
master - mean (278ms) : 267, 290
section Bailout
This PR (8613) - mean (266ms) : 263, 269
master - mean (285ms) : 276, 293
section CallTarget+Inlining+NGEN
This PR (8613) - mean (1,127ms) : 1063, 1191
master - mean (1,166ms) : 1128, 1204
HttpMessageHandler (.NET 8)gantt
title Execution time (ms) HttpMessageHandler (.NET 8)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (8613) - mean (265ms) : 261, 270
master - mean (286ms) : 282, 290
section Bailout
This PR (8613) - mean (266ms) : 263, 268
master - mean (286ms) : 282, 290
section CallTarget+Inlining+NGEN
This PR (8613) - mean (1,015ms) : 954, 1075
master - mean (1,052ms) : 999, 1104
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Summary of changes
Wrap the telemetry handler path in quotes before executing
Reason for change
If the telemetry path contains a space, we'd try to run the wrong path. Wrapping the value in quotes first ensures it's treated as a single argument.
Implementation details
Manually wrap with
". This is only called in a single place, in which we read from an env var. The simple fix is to check if it starts with a quote, and if not, wrap it. There's edge cases here, but this should be a "good enough" fix.Test coverage
Covered by existing tests, they should be unchanged.
Other details
Added a comment to a similar path that's not affected, because it use
fs::pathinstead, which automatically does the quoting.