This is a backport PR for branch 42-x-y
codebytere

#53136: perf: boot every Node.js-hosting process from the Node snapshot / code cache

Merged
Created: Aug 23, 2026, 7:48:25 AM
Merged: Aug 23, 2026, 12:01:05 PM
1 comments
Target: 42-x-y

Backport of #52873

See that PR for details. The node patches it touches conflicted in their index/context lines, and node_main.cc / node_service.cc differ here (WASM streaming is still conditional on 42-x-y); the node patch files were regenerated against this branch's patch series and the source conflicts resolved by hand. It also carries https://chromium-review.googlesource.com/c/v8/v8/+/8188320 as a V8 cherry-pick: with the Node builtins consuming or producing a code cache, ScriptCompiler::CreateCodeCache() on their external-string sources left the strings with a null resource_data_ handle under V8_ENABLE_SANDBOX and the next startsWith() on them aborted (async-hooks/test-pipewrap and test-querywrap in the Node suite); main got that fix with the 153.0.8001.0 roll. 42-x-y additionally carries https://chromium-review.googlesource.com/c/v8/v8/+/7723678 (in V8 since 14.9): booting ELECTRON_RUN_AS_NODE children from the snapshot rehashes its strings, and without that fix small TransitionArrays were left out of hash order afterwards (parallel/test-npm-install's npm child aborted on IsSortedNoDuplicates()).

Notes: Improved startup time of utilityProcess.fork(), child_process.fork() / ELECTRON_RUN_AS_NODE child processes and Node.js-enabled renderers.

Backport Information

Original PR Author
codebytere
Original PR Status
Merged
Original PR Merged At
Aug 17, 2026, 3:04:36 PM
Original PR Link
GitHubView on GitHub

Semver Impact

Major
Breaking changes
Minor
New features
Patch
Bug fixes
None
Docs, tests, etc.

Semantic Versioning helps users understand the impact of updates:

  • Major (X.y.z): Breaking changes that may require code modifications
  • Minor (x.Y.z): New features that maintain backward compatibility
  • Patch (x.y.Z): Bug fixes that don't change the API
  • None: Changes that don't affect using facing parts of Electron