[Debugger] Deflake instanceof assembly lookup tests#8885
Conversation
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: acb314bde3
ℹ️ 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".
Execution-Time Benchmarks Report ⏱️Execution-time results for samples comparing This PR (8885) 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 (8885) - mean (70ms) : 68, 73
master - mean (70ms) : 68, 72
section Bailout
This PR (8885) - mean (74ms) : 72, 76
master - mean (77ms) : 73, 81
section CallTarget+Inlining+NGEN
This PR (8885) - mean (1,094ms) : 1027, 1161
master - mean (1,085ms) : 1032, 1137
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 (8885) - mean (109ms) : 106, 112
master - mean (110ms) : 104, 117
section Bailout
This PR (8885) - mean (110ms) : 108, 112
master - mean (114ms) : 108, 121
section CallTarget+Inlining+NGEN
This PR (8885) - mean (781ms) : 752, 810
master - mean (778ms) : 752, 804
FakeDbCommand (.NET 6)gantt
title Execution time (ms) FakeDbCommand (.NET 6)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (8885) - mean (100ms) : 95, 106
master - mean (96ms) : 94, 99
section Bailout
This PR (8885) - mean (98ms) : 95, 102
master - mean (97ms) : 95, 99
section CallTarget+Inlining+NGEN
This PR (8885) - mean (945ms) : 905, 986
master - mean (935ms) : 900, 969
FakeDbCommand (.NET 8)gantt
title Execution time (ms) FakeDbCommand (.NET 8)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (8885) - mean (95ms) : 92, 98
master - mean (99ms) : 95, 104
section Bailout
This PR (8885) - mean (100ms) : 94, 106
master - mean (97ms) : 92, 102
section CallTarget+Inlining+NGEN
This PR (8885) - mean (819ms) : 781, 856
master - mean (815ms) : 769, 861
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 (8885) - mean (201ms) : 196, 205
master - mean (194ms) : 189, 198
section Bailout
This PR (8885) - mean (204ms) : 202, 207
master - mean (199ms) : 194, 203
section CallTarget+Inlining+NGEN
This PR (8885) - mean (1,204ms) : 1164, 1245
master - mean (1,171ms) : 1122, 1221
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 (8885) - mean (289ms) : 282, 295
master - mean (274ms) : 270, 279
section Bailout
This PR (8885) - mean (290ms) : 284, 295
master - mean (275ms) : 272, 278
section CallTarget+Inlining+NGEN
This PR (8885) - mean (969ms) : 950, 989
master - mean (943ms) : 923, 963
HttpMessageHandler (.NET 6)gantt
title Execution time (ms) HttpMessageHandler (.NET 6)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (8885) - mean (280ms) : 274, 286
master - mean (268ms) : 264, 272
section Bailout
This PR (8885) - mean (281ms) : 276, 285
master - mean (268ms) : 265, 271
section CallTarget+Inlining+NGEN
This PR (8885) - mean (1,171ms) : 1114, 1227
master - mean (1,142ms) : 1114, 1171
HttpMessageHandler (.NET 8)gantt
title Execution time (ms) HttpMessageHandler (.NET 8)
dateFormat x
axisFormat %Q
todayMarker off
section Baseline
This PR (8885) - mean (281ms) : 275, 286
master - mean (264ms) : 261, 268
section Bailout
This PR (8885) - mean (281ms) : crit, 275, 286
master - mean (265ms) : 261, 268
section CallTarget+Inlining+NGEN
This PR (8885) - mean (1,044ms) : 995, 1093
master - mean (1,036ms) : 991, 1081
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
BenchmarksBenchmark execution time: 2026-07-10 22:54:48 Comparing candidate commit 9bce671 in PR branch Found 0 performance improvements and 1 performance regressions! Performance is the same for 71 metrics, 0 unstable metrics, 57 known flaky benchmarks, 69 flaky benchmarks without significant changes.
|
89655ee to
9bce671
Compare
Summary of changes
Attempt to fix flake in debugger
instanceofassembly lookup tests by avoiding call-count-based assembly provider behavior.Reason for change
While attempting to fix other flake, this flaked so need to try and resolve it.
ProbeExpressionParser_InstanceOf_LazyLoadedType_CanSucceedWithoutRecompile
and two sibling tests could fail whenInstanceOfHelper.ResolveType()` retried a lookup after the process-wide assembly-load generation changed.Because the tests changed the returned assembly an unrelated parallel assembly load could trigger a retry, expose the “later” assembly too early
Implementation details
Replaced provider call-count gates with explicit boolean flags that control when additional assemblies become visible. Relaxed exact call-count assertions to account for legitimate retry behavior
Test coverage
Other details
#incident-57303