-
Notifications
You must be signed in to change notification settings - Fork 29.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
child_process: child_process.spawn ENOMEM on Windows #25484
Comments
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. |
name: Main workflow on: [push] jobs: Ubuntu: name: Run Ubuntu runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@master - name: Set Node.js 10.x uses: actions/setup-node@master with: version: 10.x - name: npm install run: npm install - name: Bootstrap run: npm run bootstrap - name: Compile run: npm run build - name: npm test run: npm test - name: Lint run: npm run lint - name: Format run: npm run format-check macOS: name: Run macOS runs-on: macos-latest steps: - name: Checkout uses: actions/checkout@master - name: Set Node.js 10.x uses: actions/setup-node@master with: version: 10.x - name: npm install run: npm install - name: Bootstrap run: npm run bootstrap - name: Compile run: npm run build - name: npm test run: npm test Windows: name: Run Windows runs-on: windows-latest steps: - name: Checkout uses: actions/checkout@master - name: Set Node.js 10.x uses: actions/setup-node@master with: version: 10.x - name: npm install run: npm install - name: Bootstrap run: npm run bootstrap - name: Compile run: npm run build # TODO: This currently ignores exec due to issues with Node and spawning on Windows, which I think is exacerbated by Jest. # It doesn't seem to affect behavior in actions themselves, just when testing with Jest. # See other similar issues here: nodejs/node#25484 - name: npm test run: npm run test-ci
@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
spawn
andspawnSync
and the issue crops up in both cases. I also note that this behavior is new to Node 11 (labeled asnode
in 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
The text was updated successfully, but these errors were encountered: