- Version: 11
- Platform: Windows Server 2016
- Subsystem: child_process
Windows Server 2016 appears to run into memory issues when spawning multiple subprocesses.
Here's the test in question in nyc:
const path = require('path')
const assert = require('assert')
const {spawnSync} = require('child_process')
const time = process.hrtime()
const workerPath = path.join(__dirname, './cache-collision-worker.js')
function doFork (message) {
const output = spawnSync(process.execPath, [workerPath, String(time[0]), String(time[1]), message])
assert.equal(output.status, 0, 'received non-zero exit code ' + output.status)
}
doFork('foo')
doFork('bar')
doFork('baz')
doFork('quz')
doFork('nada')
which spawns the fairly boring subprocess:
var assert = require('assert')
var start = [
parseInt(process.argv[2], 10),
parseInt(process.argv[3], 10)
]
var message = process.argv[4]
var diff = process.hrtime(start)
while (diff[0] * 1e9 + diff[1] < 3e9) {
diff = process.hrtime(start)
}
assert.strictEqual(require('./cache-collision-target')(message), message === 'nada' ? undefined : 'this is a ' + message)
//assert.strictEqual(process.env.NYC_CWD, __dirname)
which in turn requires:
module.exports = function (foo) {
if (foo === 'foo') {
return 'this is a foo'
}
if (foo === 'bar') {
return 'this is a bar'
}
if (foo === 'baz') {
return 'this is a baz'
}
if (foo === 'quz') {
return 'this is a quz'
}
}
I've tried using both spawn and spawnSync and the issue crops up in both cases. I also note that this behavior is new to Node 11 (labeled as node 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
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