[CI] dotnet/MSBuild intermittently exits 139 during restore and truncates binlogs
- Dominant language
- C#
- Stars
- 2.9k
- Forks
- 576
- Avg merge
- 2d 17h
- Merged PRs (30d)
- 108
Description
## Additional info to collect
Copilot: please collect the following information for each occurrence of this issue:
* Any crash reports for the crashed process. Upload them to the issue, or if that's not possible, create gists.
* We have minidumps enabled for some parts of the build (DOTNET_DbgMiniDumpName); collect whether the crash created a minidump or not, and if so, a link to the artifact where the minidump was uploaded.
## Failure signature
The `dotnet` process hosting MSBuild 18.9.3 (`18.9.3+d88a8f149`, SDK `10.0.400-preview.0.26360.120`) intermittently exits with status 139 during the first second of project restore/evaluation:
```text
Process dotnet exited with 139
```
The abrupt process death leaves the corresponding binlog truncated. Structured binlog analysis reports `System.IO.EndOfStreamException: Unable to read beyond the end of the stream` and a 0.0-second failed build.
## Confirmed occurrences
| PR / head | Build and job | Failing variation |
|---|---|---|
| #26200 / `966f7cc95666adf0926c09964990868e5f161864` | [14718622 - linker_tvos](https://devdiv.visualstudio.com/DevDiv/_build/results?buildId=14718622&view=logs&jobId=7d1d3c93-1e25-5188-e4ae-f2099cdf50dd) | `dont link/tvOS - simulator/Debug` |
| #26202 / `1f6d35df981f18fd18fb67e70d4def97495f1daa` | [14718710 - interdependent-binding-projects](https://devdiv.visualstudio.com/DevDiv/_build/results?buildId=14718710&view=logs&jobId=423b2900-bf2a-55b5-1a4f-b15b829a55ad) | `interdependent-binding-projects/Mac Catalyst/Debug` |
| #26204 / `e91862693a70d34dfd66bcc1d6967fe986fb464b` | [14718779 - linker_macos](https://devdiv.visualstudio.com/DevDiv/_build/results?buildId=14718779&view=logs&jobId=1df6e9c4-19a8-54e7-464f-11abfb1bddb9) | `link all/macOS/Debug` |
First observed: 2026-07-21 13:36 UTC. Latest observed: 2026-07-21 14:37 UTC. Recurrence: 3 jobs across 3 distinct monitored PRs.
## Diagnosis and impact
This is nondeterministic CI infrastructure/tooling behavior rather than a source compilation failure:
- It occurs in unrelated projects on tvOS, Mac Catalyst, and macOS.
- The process dies during restore/evaluation before a product error is emitted.
- Other variations in the same jobs complete successfully.
- The only apparent binlog errors are consequences of the truncated stream.
Each occurrence fails an otherwise independent simulator-test job. The current workaround is to rerun failed jobs after confirming the PR is conflict-free and retry budgets permit it. The linked artifacts and task logs have limited retention.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with the linked build and task logs for the three confirmed occurrences, then check the crash reports and whether DOTNET_DbgMiniDumpName produced a minidump. Compare the restore/evaluation failures and truncated binlogs across the listed PRs and build variations. Done means identifying a reproducible cause or actionable diagnostic evidence for the intermittent exit 139.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- build-system, ci-cd, devtools
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100