Browse Source

test: fix pummel test out-of-memory errors

Fix the following OOM error in pummel/test-net-connect-memleak
and pummel/test-tls-connect-memleak:

  FATAL ERROR: CALL_AND_RETRY_0 Allocation failed - process out of
  memory

Commit v8/v8@91afd39 increases the size of the deoptimization table
to the extent that a 64M float array pushes it over the brink. Switch
to SMIs so it stays below the limit.

pummel/test-net-connect-memleak is still failing albeit with a different
error this time. Needs further investigation.

  === release test-net-connect-memleak ===
  Path: pummel/test-net-connect-memleak
  -64 kB reclaimed
  assert.js:102
    throw new assert.AssertionError({
          ^
  AssertionError: false == true
      at done [as _onTimeout] (/home/bnoordhuis/src/nodejs/master/
  test/pummel/test-net-connect-memleak.js:48:3)
      at Timer.listOnTimeout [as ontimeout] (timers.js:110:15)
      at process._makeCallback (node.js:306:20)
v0.9.9-release
Ben Noordhuis 12 years ago
parent
commit
acd0df4ad9
  1. 2
      test/pummel/test-net-connect-memleak.js
  2. 2
      test/pummel/test-tls-connect-memleak.js

2
test/pummel/test-net-connect-memleak.js

@ -30,7 +30,7 @@ net.createServer(function() {}).listen(common.PORT);
(function() {
// 2**26 == 64M entries
for (var i = 0, junk = [123.456]; i < 26; ++i) junk = junk.concat(junk);
for (var i = 0, junk = [0]; i < 26; ++i) junk = junk.concat(junk);
net.createConnection(common.PORT, '127.0.0.1', function() {
assert(junk.length != 0); // keep reference alive

2
test/pummel/test-tls-connect-memleak.js

@ -35,7 +35,7 @@ tls.createServer({
(function() {
// 2**26 == 64M entries
for (var i = 0, junk = [123.456]; i < 26; ++i) junk = junk.concat(junk);
for (var i = 0, junk = [0]; i < 26; ++i) junk = junk.concat(junk);
var options = { rejectUnauthorized: false };
tls.connect(common.PORT, '127.0.0.1', options, function() {

Loading…
Cancel
Save