-
-
Notifications
You must be signed in to change notification settings - Fork 31.8k
Investigate flaky async-hooks.test-improper-unwind
#58463
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
Comments
cc @nodejs/async_hooks |
This doesn't look like it is related to async hooks. |
The child_process implementation in node/lib/internal/child_process.js Lines 262 to 275 in c969649
On exit:
The child process is getting killed with a signal, that's why the 'close' callback is called with a null code and a truthy signal (we don't know what value this holds because it's not being logged). I think the test should log the signal and continue the assertions for now. |
When the spawned child process gets closed with a signal, the exit code is not set and that is why the exit code assertion was failing. This change adjusts the test to check the signal and if it is truthy, it doesn't assert the exit code and instead logs the signal and continues the rest of the assertions. Refs: nodejs#58463 (comment) Refs: nodejs#58199 Refs: nodejs#58463 Signed-off-by: Darshan Sen <raisinten@gmail.com>
Submitted a PR: #58478 |
Refs: nodejs#58463 (comment) Signed-off-by: Darshan Sen <raisinten@gmail.com>
I have also created a PR to update the child process docs with this info - #58479 |
When the spawned child process gets closed with a signal, the exit code is not set and that is why the exit code assertion was failing. This change adjusts the test to check the signal and if it is truthy, it doesn't assert the exit code and instead logs the signal and continues the rest of the assertions. Refs: #58463 (comment) Refs: #58199 Refs: #58463 Signed-off-by: Darshan Sen <raisinten@gmail.com> PR-URL: #58478 Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de> Reviewed-By: Chengzhong Wu <legendecas@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Refs: #58463 (comment) Signed-off-by: Darshan Sen <raisinten@gmail.com> PR-URL: #58479 Reviewed-By: Chengzhong Wu <legendecas@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
When the spawned child process gets closed with a signal, the exit code is not set and that is why the exit code assertion was failing. This change adjusts the test to check the signal and if it is truthy, it doesn't assert the exit code and instead logs the signal and continues the rest of the assertions. Refs: #58463 (comment) Refs: #58199 Refs: #58463 Signed-off-by: Darshan Sen <raisinten@gmail.com> PR-URL: #58478 Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de> Reviewed-By: Chengzhong Wu <legendecas@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Refs: #58463 (comment) Signed-off-by: Darshan Sen <raisinten@gmail.com> PR-URL: #58479 Reviewed-By: Chengzhong Wu <legendecas@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
I can confirm that #58478 has fixed this issue. This flake was appearing in the reliability report 2-4 times daily from 2025-05-23 - nodejs/reliability#1209 till 2025-06-01 nodejs/reliability#1218. The PR landed on 2025-05-29 and after the PRs where CI was being run on included this change, the flake went away in all recent reliability reports. |
Test
test/async-hooks/test-improper-unwind.js
Platform
AIX
Console output
Build links
Additional information
No response
The text was updated successfully, but these errors were encountered: