-
Notifications
You must be signed in to change notification settings - Fork 29.6k
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
src: handle empty Maybe in uv binding initialize #25079
Conversation
This can fail when terminating a Worker that loads the `uv` binding at the same time. Refs: nodejs#25061 (comment)
Landed in 67f9582 |
This can fail when terminating a Worker that loads the `uv` binding at the same time. Refs: #25061 (comment) Fixes: #25134 PR-URL: #25079 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Does this mean we need to treat bindings loaded in workers with care for situations like this? (And this one fails more often because the error map creation is a lot of code when expanded?) (Also I think we should be able to build that lazily...) |
@joyeecheung I think the reason for this is that I mean, I would personally prefer to always code more defensively, but I assume people have differing opinions on this… |
@addaleax I think it makes sense to be more defensive at least for the binding initializers - if I understand correctly, workers are special because now you have the ability to terminate a thread while it's bootstrapping (whereas previously things were more deterministic on the main thread?) |
@joyeecheung Yes, exactly. I still plan to go through all of our source code and look for problematic cases… which is, unfortunately, a lot of code to go through 😄 |
This can fail when terminating a Worker that loads the `uv` binding at the same time. Refs: #25061 (comment) Fixes: #25134 PR-URL: #25079 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
This can fail when terminating a Worker that loads the `uv` binding at the same time. Refs: nodejs#25061 (comment) Fixes: nodejs#25134 PR-URL: nodejs#25079 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
This comment has been minimized.
This comment has been minimized.
This can fail when terminating a Worker that loads the `uv` binding at the same time. Refs: nodejs#25061 (comment) Fixes: nodejs#25134 PR-URL: nodejs#25079 Backport-PR-URL: nodejs#28832 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
This can fail when terminating a Worker that loads the `uv` binding at the same time. Refs: #25061 (comment) Fixes: #25134 PR-URL: #25079 Backport-PR-URL: #28832 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
This can fail when terminating a Worker that loads
the
uv
binding at the same time.Refs: #25061 (comment)
Checklist
make -j4 test
(UNIX), orvcbuild test
(Windows) passes