-
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: deflake test-http2-large-write-multiple-requests #51863
Conversation
If the server is not referenced, it might go away too soon and the client may not get enough ends for it to close itself, resulting a timeout. This patch updates the test to simply close the server when enough requests have been processed, and keep the server referenced while the test is ongoing. Drive-by: add more logs to facilitate debugging.
In recent CI runs this only reproduces on containered builds, which the stress test doesn't cover. Some older reliability reports (e.g. nodejs/reliability#784 from a week ago) suggest that this also reproduces on fedora-latest-x64, rhel8-x64 and ubuntu2204-64, I did a stress test (https://ci.nodejs.org/view/Stress/job/node-stress-single-test/476/) for this branch and another (https://ci.nodejs.org/view/Stress/job/node-stress-single-test/477/) for the main branch, both are green, so I guess we can only verify this using the PR CI. |
I don't think it's necessary for the test to unref the server and it's safe to keep it referenced while maintaining the validity of the test (as far as I can tell from CVE-2019-9517 and CVE-2019-9511 descriptions) but cc @nodejs/http2 just in case. |
Co-authored-by: Luigi Pinca <[email protected]>
If the server is not referenced, it might go away too soon and the client may not get enough ends for it to close itself, resulting a timeout. This patch updates the test to simply close the server when enough requests have been processed, and keep the server referenced while the test is ongoing. Drive-by: add more logs to facilitate debugging. PR-URL: #51863 Refs: nodejs/reliability#791 Reviewed-By: Marco Ippolito <[email protected]> Reviewed-By: Luigi Pinca <[email protected]>
Landed in a4dd041 |
If the server is not referenced, it might go away too soon and the client may not get enough ends for it to close itself, resulting a timeout. This patch updates the test to simply close the server when enough requests have been processed, and keep the server referenced while the test is ongoing. Drive-by: add more logs to facilitate debugging. PR-URL: #51863 Refs: nodejs/reliability#791 Reviewed-By: Marco Ippolito <[email protected]> Reviewed-By: Luigi Pinca <[email protected]>
If the server is not referenced, it might go away too soon and the client may not get enough ends for it to close itself, resulting a timeout. This patch updates the test to simply close the server when enough requests have been processed, and keep the server referenced while the test is ongoing. Drive-by: add more logs to facilitate debugging. PR-URL: #51863 Refs: nodejs/reliability#791 Reviewed-By: Marco Ippolito <[email protected]> Reviewed-By: Luigi Pinca <[email protected]>
Looks like the flake is still there https://ci.nodejs.org/job/node-test-commit-linux/56383/nodes=rhel8-x64/consoleFull We do get some more logs though. It seems the clients and the server are all supposed to be closed. Not sure what else is keeping the process alive.. |
If the server is not referenced, it might go away too soon and the client may not get enough ends for it to close itself, resulting a timeout. This patch updates the test to simply close the server when enough requests have been processed, and keep the server referenced while the test is ongoing. Drive-by: add more logs to facilitate debugging. PR-URL: #51863 Refs: nodejs/reliability#791 Reviewed-By: Marco Ippolito <[email protected]> Reviewed-By: Luigi Pinca <[email protected]>
If the server is not referenced, it might go away too soon and the client may not get enough ends for it to close itself, resulting a timeout. This patch updates the test to simply close the server when enough requests have been processed, and keep the server referenced while the test is ongoing. Drive-by: add more logs to facilitate debugging. PR-URL: #51863 Refs: nodejs/reliability#791 Reviewed-By: Marco Ippolito <[email protected]> Reviewed-By: Luigi Pinca <[email protected]>
If the server is not referenced, it might go away too soon and the client may not get enough ends for it to close itself, resulting a timeout. This patch updates the test to simply close the server when enough requests have been processed, and keep the server referenced while the test is ongoing. Drive-by: add more logs to facilitate debugging. PR-URL: #51863 Refs: nodejs/reliability#791 Reviewed-By: Marco Ippolito <[email protected]> Reviewed-By: Luigi Pinca <[email protected]>
If the server is not referenced, it might go away too soon and the client may not get enough ends for it to close itself, resulting a timeout. This patch updates the test to simply close the server when enough requests have been processed, and keep the server referenced while the test is ongoing. Drive-by: add more logs to facilitate debugging. PR-URL: nodejs#51863 Refs: nodejs/reliability#791 Reviewed-By: Marco Ippolito <[email protected]> Reviewed-By: Luigi Pinca <[email protected]>
If the server is not referenced, it might go away too soon and the client may not get enough ends for it to close itself, resulting a timeout.
This patch updates the test to simply close the server when enough requests have been processed, and keep the server referenced while the test is ongoing.
Drive-by: add more logs to facilitate debugging.
Refs: nodejs/reliability#791