Skip to content
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

Windows 10 access violation with debugger #5268

Closed
Trott opened this issue Feb 17, 2016 · 1 comment
Closed

Windows 10 access violation with debugger #5268

Trott opened this issue Feb 17, 2016 · 1 comment
Labels
windows Issues and PRs related to the Windows platform.

Comments

@Trott
Copy link
Member

Trott commented Feb 17, 2016

The environment:

Windows 10 (specifically run via the Node.js project Jenkins server)

The code:

Put this in a file in test/parallel:

'use strict';

const common = require('../common');
const assert = require('assert');
const spawn = require('child_process').spawn;

const args = [`--debug`, `--debug-port=${common.PORT}`, `--interactive`];
const proc = spawn(process.execPath, args, { stdio: 'pipe' });
proc.stdin.write(`
    util.inspect(Promise.resolve(42));
    util.inspect(Promise.resolve(1337));
    .exit
`);
proc.on('exit', common.mustCall((exitCode, signalCode) => {
  assert.strictEqual(exitCode, 0);
  assert.strictEqual(signalCode, null);
}));
let stdout = '';
proc.stdout.setEncoding('utf8');
proc.stdout.on('data', (data) => stdout += data);
process.on('exit', () => {
  assert(stdout.includes('Promise { 42 }'));
  assert(stdout.includes('Promise { 1337 }'));
});

The issue:

The code usually runs OK but every once in a while, there's an access violation:

# 
# assert.js:89
#   throw new assert.AssertionError({
#   ^
# AssertionError: 3221225477 === 0
#     at ChildProcess.proc.on.common.mustCall (c:\workspace\node-stress-single-test\nodes\win10\test\parallel\test-debug-no-context.js:15:10)
#     at ChildProcess.<anonymous> (c:\workspace\node-stress-single-test\nodes\win10\test\common.js:382:15)
#     at emitTwo (events.js:101:13)
#     at ChildProcess.emit (events.js:186:7)
#     at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)

Here's a stress test showing the issue: https://ci.nodejs.org/job/node-stress-single-test/494/nodes=win10/console

Ref: #4343

@Trott Trott added debugger windows Issues and PRs related to the Windows platform. labels Feb 17, 2016
Trott added a commit to Trott/io.js that referenced this issue Feb 17, 2016
Change test so that it passes on the occasional win10 access violation.

The workaround here can be undone when issue 5268 is resolved.

The test still detects the defect it was written to detect. There are
two assertions that detect the defect and only one was disabled.

Ref: nodejs#5268
Fixes: nodejs#4343
Trott added a commit to Trott/io.js that referenced this issue Feb 19, 2016
Change test so that it passes on the occasional win10 access violation.

The workaround here can be undone when issue 5268 is resolved.

The test still detects the defect it was written to detect. There are
two assertions that detect the defect and only one was disabled.

Ref: nodejs#5268
Fixes: nodejs#4343
PR-URL: nodejs#5269
Reviewed-By: James M Snell <jasnell@gmail.com>
rvagg pushed a commit that referenced this issue Feb 21, 2016
Change test so that it passes on the occasional win10 access violation.

The workaround here can be undone when issue 5268 is resolved.

The test still detects the defect it was written to detect. There are
two assertions that detect the defect and only one was disabled.

Ref: #5268
Fixes: #4343
PR-URL: #5269
Reviewed-By: James M Snell <jasnell@gmail.com>
MylesBorins pushed a commit that referenced this issue Mar 1, 2016
Change test so that it passes on the occasional win10 access violation.

The workaround here can be undone when issue 5268 is resolved.

The test still detects the defect it was written to detect. There are
two assertions that detect the defect and only one was disabled.

Ref: #5268
Fixes: #4343
PR-URL: #5269
Reviewed-By: James M Snell <jasnell@gmail.com>
MylesBorins pushed a commit that referenced this issue Mar 1, 2016
Change test so that it passes on the occasional win10 access violation.

The workaround here can be undone when issue 5268 is resolved.

The test still detects the defect it was written to detect. There are
two assertions that detect the defect and only one was disabled.

Ref: #5268
Fixes: #4343
PR-URL: #5269
Reviewed-By: James M Snell <jasnell@gmail.com>
MylesBorins pushed a commit that referenced this issue Mar 2, 2016
Change test so that it passes on the occasional win10 access violation.

The workaround here can be undone when issue 5268 is resolved.

The test still detects the defect it was written to detect. There are
two assertions that detect the defect and only one was disabled.

Ref: #5268
Fixes: #4343
PR-URL: #5269
Reviewed-By: James M Snell <jasnell@gmail.com>
@Trott
Copy link
Member Author

Trott commented Apr 4, 2017

Debugger is being removed in the foreseeable future. This is unlikely to be fixed. Closing.

@Trott Trott closed this as completed Apr 4, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
windows Issues and PRs related to the Windows platform.
Projects
None yet
Development

No branches or pull requests

1 participant