v8/test/inspector/debugger/pause-on-oom.js
kozyatinskiy 9662547c15 [inspector] unconditionally pause on OOM
Currently V8 context just crashes on OOM, with this CL backend will send paused notification with OOM reason before OOM and will increase heap limits to allow further debugging on pause.

BUG=chromium:675911

Review-Url: https://codereview.chromium.org/2624543004
Cr-Commit-Position: refs/heads/master@{#42480}
2017-01-18 21:35:09 +00:00

28 lines
811 B
JavaScript

// Copyright 2017 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Flags: --max_old_space_size=4
print('Check pause on OOM');
InspectorTest.addScript(`
var arr = [];
var stop = false;
function generateGarbage() {
while(!stop) {
arr.push(42);
}
}
//# sourceURL=test.js`, 10, 26);
Protocol.Debugger.onPaused((message) => {
InspectorTest.log(`reason: ${message.params.reason}`);
Protocol.Debugger.evaluateOnCallFrame({
callFrameId: message.params.callFrames[0].callFrameId,
expression: 'arr = []; stop = true;'
}).then(() => Protocol.Debugger.resume());
});
Protocol.Debugger.enable();
Protocol.Runtime.evaluate({ expression: 'generateGarbage()' })
.then(InspectorTest.completeTest);