Skip to content

Retain SOS dumps from failed Helix work items - #6050

Merged
max-charlamb merged 1 commit into
mainfrom
dev/max-charlamb/retain-sos-dumps-on-failure
Sep 21, 2026
Merged

max-charlamb merged 1 commit into
mainfrom
dev/max-charlamb/retain-sos-dumps-on-failure

Conversation

@max-charlamb

Copy link
Copy Markdown
Member

Summary

  • archive the complete SOS harness dump directory when a Helix work item fails
  • support both the Windows and Unix SOS test launchers
  • avoid producing dump archives for passing work items

Why

The Windows x86 SOS failure in #6047 analyzed argslocals.dmp, but that input dump was stored only in the work item's scratch directory. Existing failure diagnostics retain dumps when a debugger host crashes; they do not retain the input dump when the host completes normally and the test later fails an assertion.

The failure did not reproduce in 1,100 fresh local x86 captures, so retaining the complete dump set from a failed leg gives us the evidence needed to investigate rare collection or ICorDebug failures after Helix releases the machine.

The failing CI run was https://dev.azure.com/dnceng-public/cbb18261-c48f-4abb-8651-8cdcb5474649/_build/results?buildId=1601946&view=logs&jobId=c72c5e66-de89-5f4b-8ef9-fd893b8f7646.

Validation

  • exercised the real Windows launcher with isolated passing and failing payloads
  • exercised the real Unix launcher with isolated passing and failing payloads
  • verified failures preserve the original exit code and archive dumps/sample.dmp
  • verified passing work items create no dump archive
  • ran bash -n src/tests/SOS.Tests/Helix/run-sos-tests.sh

Retain all SOS harness dumps when a Helix work item fails so intermittent failures can be investigated after the machine is released.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 2d5c60f7-9c89-42e6-b9fc-04ef78c8f8d8
Copilot AI lite review requested due to automatic review settings September 18, 2026 23:25
@max-charlamb
max-charlamb requested a review from a team as a code owner September 18, 2026 23:25

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot review overview

🔵 Needs a closer look

Ensure dump archiving also occurs when signature restoration fails.

Review effort: Lite
Findings: None

What changed in this PR

Adds failure-only SOS dump archiving for Helix work items on Windows and Unix, with documentation updates.

Changes:

  • Archives SOS dumps after launcher failures.
  • Preserves passing-work-item behavior.
  • Documents retained failure artifacts.
File Reviewed changes
src/​tests/​SOS.Tests/​README.md Documents Helix dump retention.
src/​tests/​SOS.Tests/​Helix/​run-sos-tests.sh Archives Unix SOS dumps on failure.
src/​tests/​SOS.Tests/​Helix/​run-sos-tests.cmd Archives Windows SOS dumps on failure.

💡 Add a code-review agent skill for context-aware, tailored reviews. Learn more in the docs.

@max-charlamb
max-charlamb merged commit e10c77e into main Sep 21, 2026
24 checks passed
@max-charlamb
max-charlamb deleted the dev/max-charlamb/retain-sos-dumps-on-failure branch September 21, 2026 14:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants