-
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
Revert "handle_wrap: IsRefed -> Unrefed, no isAlive check" #6546
Conversation
and here's some proof (kinda) that it actually works (reasonably): #6381 (comment) |
Can you please add some explanation in the commit message about why would be reverted. |
e19c5dd
to
00cf1f4
Compare
@jasnell done, ptal |
cd80f4b
to
2688e45
Compare
Thank you. CI is green. LGTM but want @bnoordhuis and @trevnorris to sign off as well. |
ping @bnoordhuis & @trevnorris |
Quick LGTM. Can we rename them now to |
@bnoordhuis I may as well do that in a second commit here then.. |
2688e45
to
54bc12e
Compare
updated ptal.. |
2nd commit LGTM2. |
attempting to ping @trevnorris again |
LGTM. Second commit enough to warrant another CI run? |
@trevnorris Yeah good call: https://ci.nodejs.org/job/node-test-pull-request/2593/ |
CI is green, landing. |
This reverts commit 9bb5a5e. This API is not suitable because it depended on being able to potentially access the handle's flag after the handle was already cleaned up. Since this is not actually possible (obviously, oops) this newer API no longer makes much sense, and the older API is more suitable. API comparison: IsRefed -> Has a strong reference AND is alive. (Deterministic) Unrefed -> Has a weak reference OR is dead. (Less deterministic) Refs: nodejs#6395 Refs: nodejs#6204 Refs: nodejs#6401 Refs: nodejs#6382 Fixes: nodejs#6381 PR-URL: nodejs#6546 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Trevor Norris <trev.norris@gmail.com> Conflicts: src/handle_wrap.cc test/parallel/test-handle-wrap-isrefed-tty.js test/parallel/test-handle-wrap-isrefed.js
Rename slightly to HasRef() at bnoordhuis’ request. Better reflects what we actually do for this check. Refs: nodejs#6395 Refs: nodejs#6204 Refs: nodejs#6401 Refs: nodejs#6382 Refs: nodejs#6381 PR-URL: nodejs#6546 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Trevor Norris <trev.norris@gmail.com>
54bc12e
to
fe4837a
Compare
For posterity, landing this requires this commit chain:
|
This reverts commit 9bb5a5e. This API is not suitable because it depended on being able to potentially access the handle's flag after the handle was already cleaned up. Since this is not actually possible (obviously, oops) this newer API no longer makes much sense, and the older API is more suitable. API comparison: IsRefed -> Has a strong reference AND is alive. (Deterministic) Unrefed -> Has a weak reference OR is dead. (Less deterministic) Refs: #6395 Refs: #6204 Refs: #6401 Refs: #6382 Fixes: #6381 PR-URL: #6546 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Trevor Norris <trev.norris@gmail.com> Conflicts: src/handle_wrap.cc test/parallel/test-handle-wrap-isrefed-tty.js test/parallel/test-handle-wrap-isrefed.js
@Fishrock123 Added dont-land label. please feel free to make a change if that was incorrect |
Checklist
Affected core subsystem(s)
handle_wrap
Description of change
This reverts commit 9bb5a5e.
Refs: #6395
Refs: #6204
Refs: #6401
Refs: #6382
Fixes: #6381
Conflicts:
src/handle_wrap.cc
test/parallel/test-handle-wrap-isrefed-tty.js
test/parallel/test-handle-wrap-isrefed.js
My own stupidity for changing this. cc @bnoordhuis, @jasnell, @trevnorris so this can hopefully be landed properly into a release. (Hopefully this week?..)