-
Notifications
You must be signed in to change notification settings - Fork 29.7k
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: fix test-debug-signal-cluster.js flakyness #8568
Conversation
Do not assume any order and buffering/atomicity of output from child processes' debugger agents. Fixes nodejs#3796.
|
||
assert.deepStrictEqual(outputLines, expectedLines); | ||
assert.equal(expectedContent, ''); |
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.
Nit: assert.strictEqual()
(not necessary, just a preference, hence the Nit
, ignore if you have strong contrary feelings)
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.
Good catch, thanks!
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.
LGTM if CI and stress tests come up clean
// output may be interleaved arbitrarily. Moreover, child processes' output | ||
// may be written using an arbitrary number of system calls, and no assumption | ||
// on buffering or atomicity of output should be made. Thus, we process the | ||
// output of all chid processes' debugger agents character by character, and |
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.
nit: spotted a comment typo
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.
Good catch, thanks!
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.
LGTM pending CI and stress test
Rerunning tests on FreeBSD since tests failed to start on that platform during the previous CI tests run. |
Updated PR according to code reviews with one separate commit: I'll squash all commits in this PR into one when/if it lands. Tests on FreeBSD all passed, still waiting for stress tests to complete. |
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.
LGTM with changes and green CI
Pushed another commit that actually removes the test from the list of flaky tests. My apologies for omitting that from the first commit. We shouldn't need to rerun CI tests though, as they all turned green and we're running specific stress tests on the two platforms for which we're changing the flaky tests list. |
Agreed. CI clean (with usual unrelated failures) and stress test looks very promising |
Stress tests all passed, will land asap. |
Does not land cleanly on v6, attempting to patch maked the tests fail. |
Checklist
make -j4 test
(UNIX), orvcbuild test nosign
(Windows) passesAffected core subsystem(s)
Tests.
Description of change
Do not assume any order and buffering/atomicity of output from child
processes' debugger agents.
Fixes #3796.