-
Notifications
You must be signed in to change notification settings - Fork 30.2k
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
test: ignore IRPStackSize bug on win32 #2149
Conversation
bcd6db7
to
02c6988
Compare
Is this specific to Windows? I saw this recently on OS X - https://jenkins-iojs.nodesource.com/job/iojs+pr+osx/105/nodes=osx1010/tapTestReport/test.tap-136/ |
try { | ||
process._debugProcess(child.pid); | ||
} catch (e) { | ||
if (process.platform === 'win32' && (e.message === |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You can use common.isWindows
to check for Windows.
ouch .. I was sure this was Windows only, and our Windows 2008 machines in particular. It could be a different failure given that there is no output along with that error and it's actually failing from a timeout (console output shows ~60 seconds for that one). |
Some driver stacks on win32 will trigger an occasional error on test-debug-port-from-cmdline.js, reporting: Not enough storage is available to process this command Workaround is to check for that error and ignore the test entirely. Closes: nodejs#2094
02c6988
to
c03e057
Compare
'Not enough storage is available to process this command.' || | ||
e.message === 'Access is denied.')) { | ||
child.kill(); | ||
console.log('Encountered IRPStackSize bug on win32, ignoring test'); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe comment linking to this issue?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We have to follow the convention
1..0 # Skipped: Encountered IRPStackSize bug on win32, ignoring test
while skipping tests, so that TAP Plugin can pick them.
@rvagg if the issue is as hypothesized, a buggy driver setup, I am not too convinced that changing the test is the best course of action. Shouldn't we rather investigate and fix that machine configuration? |
@cjihrig might be a different issue. Your OS X case times out after 60s, Windows throws fast. I think we should at least try to investigate what |
@orangemocha do you have time to investigate? My concern is that this is a complex issue that isn't likely to get attention any time soon and the regular spurious failures are going to be a setback for the rest of the project when they don't appear to point to real problems with node |
@rvagg , sure. Assuming this is a problem with the driver stack, the best fix I can think of is increasing IRPStackSize on the problematic machine. But I'll take a closer look. Which machines have you seen this on? All the Win2k8 jenkins slaves? Are they VMs or physical machines? |
@orangemocha I fiddled briefly with IRPStackSize but it didn't seem to do much. It's been only the Windows 2008 machines. They are VMs on Rackspace. |
@silverwind AFAIK |
Some driver stacks on win32 will trigger an occasional error on test-debug-port-from-cmdline.js:
My attempt at a workaround is to check for that error and ignore the test entirely. But unfortunately it's not so straightforward because now the test is failing with:
Can anyone with background or any kind of clue on this suggest a better workaround or do I just need to catch the error and ignore if
win32
(I'd rather not be so blanket about it).