Repository navigation
child_process: child_process.spawn ENOMEM on Windows #25484
Description
Activity
- addedchild_processIssues and PRs related to the child_process subsystem.Issues and PRs related to the child_process subsystem.
on Jan 14, 2019 attempts to dig further into this issue can be found here: istanbuljs/nyc#967
cc @nodejs/platform-windows
I'm seeing another example of this behavior: istanbuljs/istanbuljs#307
@joaocgreis is this something you can look into?
We are now experiencing this issue with node.js 10.16.0 as well, 10.15.0 does not have the issue - https://travis-ci.org/coreyfarrell/nyc/builds/548133760.
@bcoe Travis-CI documentation says that Windows gets 8GB ram for testing, maybe this is just inadequate for the way they setup Windows (other stuff running)? Can we try a different CI for Windows (appveyor or another)? It does seem like memory requirements for node.js under windows is increasing with each release but maybe this is unavoidable.
- addedwindowsIssues and PRs related to the Windows platform.Issues and PRs related to the Windows platform.help wantedIssues that need assistance from volunteers or PRs that need help to proceed.Issues that need assistance from volunteers or PRs that need help to proceed.
on Oct 7, 2019 @bcoe ... whatcha think... does this need to remain open?
I just retested nyc on Travis for Windows with Node.js 8, 10, 12 and 14. I didn't receive an ENOMEM error this time. Not sure if this means that something was fixed in Node.js or if Travis increased the memory available since the last time I tried.
@jasnell @coreyfarrell if we're not seeing this any longer, let's close.
Windows Server 2016 appears to run into memory issues when spawning multiple subprocesses.
Here's the test in question in nyc:
which spawns the fairly boring subprocess:
which in turn requires:
I've tried using both
spawnandspawnSyncand the issue crops up in both cases. I also note that this behavior is new to Node 11 (labeled asnodein the image included):At a glance, this issue seems similar to #25382; but I note that tests run fine on Node 8 and Node 10.
@nodejs/process