Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .github/workflows/csharp-ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -248,6 +248,9 @@ jobs:
contents: read
packages: read
pull-requests: write
# MSBuild node reuse: a sibling job's orphan-process cleanup on the shared hetzner-3/hetzner-4 host can kill this job's idle MSBuild node mid-build (peacefulstudio/daml-codegen-csharp-internal#1086)
env:
MSBUILDDISABLENODEREUSE: '1'
defaults:
run:
shell: bash
Expand Down
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## [Unreleased]

### Fixed

- Fix `csharp-ci.yaml`'s `build-and-test` job losing MSBuild mid-build with `MSB4166` ("node terminated unexpectedly") when a caller lands on the shared `hetzner-3`/`hetzner-4` self-hosted pool. The two runners share one host and OS user; when one job finishes, its orphan-process cleanup kills lingering MSBuild "node" processes, including idle out-of-proc nodes a *different*, still-running job on the sibling runner had left attached to for node reuse — that job's build then dies mid-flight. The job now sets `MSBUILDDISABLENODEREUSE: '1'`, which makes MSBuild skip the node-reuse handshake entirely (`XMake.cs` `ProcessNodeReuseSwitch`, `CommunicationsUtilities.cs:657`, `NodeProviderOutOfProcBase.cs:265-307`), so no job ever registers a shared out-of-proc node a sibling's cleanup could kill. `scala-ci.yaml` invokes no `dotnet`/MSBuild and is unaffected. First hit by `peacefulstudio/daml-codegen-csharp-internal` (issue #1086, fixed for that repo's own inline jobs in #1312); this closes the same gap in the reusable workflow, which the caller's job `env:` can't reach under `workflow_call`. Consumers on GitHub-hosted runners see no change. (#40)

## [2.4.1] - 2026-08-30

### Fixed
Expand Down
Loading