Skip to content

Pin Node.js to 24.14.1 to avoid v24.15.0+ native crash - #67402

Merged
wtgodbe merged 1 commit into
dotnet:mainfrom
wtgodbe:pin-node-24.17.0
Jun 25, 2026
Merged

Pin Node.js to 24.14.1 to avoid v24.15.0+ native crash#67402
wtgodbe merged 1 commit into
dotnet:mainfrom
wtgodbe:pin-node-24.17.0

Conversation

@wtgodbe

@wtgodbe wtgodbe commented Jun 24, 2026

Copy link
Copy Markdown
Member

Problem

Node.js v24.15.0 and every later 24.x release (24.16.0, 24.17.0, 24.18.0) cause intermittent native crashes in node.exe on Windows CI agents. The current signature is a Windows access violation during the rollup bundling step of the Components JS build:

npm error code 3221225477          # 0xC0000005 (STATUS_ACCESS_VIOLATION)
npm error command ... rollup -c --environment development --forceExit
eng\\Npm.Workspace.nodeproj(161,5): error MSB3073: ... exited with code -1073741819.

Crash frequency per Node version (Build: Windows leg, past 7 days)

Node Released Rollup crashes observed
24.14.1 Mar 24 0
24.16.0 May 21 2
24.17.0 Jun 17 3
24.18.0 Jun 23 4

The crash spans the entire post-24.15.0 line — it is not unique to 24.18.0 (an earlier draft of this PR incorrectly pinned 24.17.0; data shows 24.17.0 also crashes). Frequency rises with each release. Example crashing builds: 1469128/1470089 (24.16.0), 1470543/1471858/1473856 (24.17.0), 1478676/1478854/1478907/1479647 (24.18.0).

Context — repeat offender

This matches the earlier v24.15.0 incident (0xDEAD during npm-ci extraction) that led to the original 24.14.1 pin (#66465 / #66621), reverted in #66979. With the pin gone, 24.x floated up through 24.16/24.17/24.18 and hit the same class of upstream native crash. v24.14.1 ran Apr 24–Jun 8 with zero crashes.

Fix

Re-pin to 24.14.1 (last release with zero observed crashes) in both UseNode@1 blocks of default-build.yml, and bump cache keys node24node24.14.1. This is an upstream Node/V8 Windows regression, so a code-side fix isn't viable; pin until a fixed 24.x ships.

Copilot AI review requested due to automatic review settings June 24, 2026 20:02
@wtgodbe
wtgodbe requested a review from a team as a code owner June 24, 2026 20:02

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.

Pull request overview

Pins the Node.js version used by the Azure Pipelines “default-build” jobs to avoid intermittent native node.exe crashes seen on Windows CI after Node 24.18.0 started being picked up by the floating 24.x spec.

Changes:

  • Change UseNode@1 from version: 24.x to version: 24.17.0 in both job blocks in default-build.yml.
  • Update the Cache@2 node_modules cache key/restoreKey segment from node24 to node24.17.0 to avoid reusing caches produced with a different Node version.

Node.js v24.15.0 and every later 24.x release (24.16.0, 24.17.0, 24.18.0)
cause intermittent native crashes in node.exe on Windows CI agents. The
current signature is a Windows access violation (0xC0000005, npm error
code 3221225477 / MSBuild exit code -1073741819) inside node.exe while
running 'rollup -c' for the Components JS workspaces.

Crash frequency rises with each release; over the past week the rollup
crash was observed on 24.16.0 (2x), 24.17.0 (3x) and 24.18.0 (4x) on the
Build: Windows leg, while 24.14.1 had zero crashes. This matches the
earlier v24.15.0 incident (0xDEAD during npm-ci extraction) that led to
the original 24.14.1 pin (dotnet#66465), which was reverted in dotnet#66979.

Re-pin to 24.14.1 (last release with zero observed crashes) until the
upstream Node issue is fixed. Also update cache keys to avoid stale
node_modules from 24.x builds.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@wtgodbe
wtgodbe force-pushed the pin-node-24.17.0 branch from 0089d8d to 3b859d5 Compare June 24, 2026 21:01
@wtgodbe wtgodbe changed the title Pin Node.js to 24.17.0 to avoid v24.18.0 native crash Pin Node.js to 24.14.1 to avoid v24.15.0+ native crash Jun 24, 2026
@wtgodbe
wtgodbe merged commit 849620a into dotnet:main Jun 25, 2026
25 checks passed
@dotnet-milestone-bot dotnet-milestone-bot Bot added this to the 11.0-preview7 milestone Jun 25, 2026
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.

4 participants