GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | ||||||||||||||||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | ||||||||||||||||
GeezerVison is showing github.com — async_hooks: prevent async storage methods leaking to outer context by Qard · Pull Request #31950 · nodejs/node Conversation
|
|
Also, with the addition of the |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Couple comments, also, I am afraid this comes with a perf cost in the *SyncAndReturn(...) methods
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
|
Yes, there would be some perf cost to the |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
Because of |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
|
This PR was aimed to fix nested Yet, I don't see any tests that verify the fix. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
No it wasn't, I made this as an improvement not as a fix. I can rework it to verify that it fixes that too though, if you want, as it probably does. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
Added a test to verify it fixes that issue. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
I restored the Also, what do you all think about just making the |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
I like the idea of keeping only a single pair of methods. But I'd rather rename |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
|
@Qard I don't really understand the benchmarks, did you delete one message? Also, if I understand well, we still introduce a perf impact on the sync path that grows with the number of concurent instances. I'd like to avoid this case. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
Yes, I deleted a comment awhile ago as I ran the benchmark wrong. The correct benchmark is the one in the thread near the top of the PR. It shows that the performance difference is basically non-existent. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
5e07676 to
2b6a63c
Compare
|
Rebased as #31930 has landed now. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
2b6a63c to
23a0772
Compare
There was an error while loading. Please reload this page.
|
Probably worth waiting for #31998 to land first |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
417ff73 to
2db2994
Compare
|
Marked this one with |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
PR-URL: nodejs#31950 Reviewed-By: Vladimir de Turckheim <[email protected]> Reviewed-By: Gerhard Stöbich <[email protected]>
|
Sounds fine to me. 👍 |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
`runSyncAndReturn` was removed from Node.js in nodejs/node#31950
PR-URL: nodejs#31950 Reviewed-By: Vladimir de Turckheim <[email protected]> Reviewed-By: Gerhard Stöbich <[email protected]>
PR-URL: nodejs#31950 Reviewed-By: Vladimir de Turckheim <[email protected]> Reviewed-By: Gerhard Stöbich <[email protected]>
PR-URL: #31950 Reviewed-By: Vladimir de Turckheim <[email protected]> Reviewed-By: Gerhard Stöbich <[email protected]>
PR-URL: #31950 Reviewed-By: Vladimir de Turckheim <[email protected]> Reviewed-By: Gerhard Stöbich <[email protected]>
Notable Changes:
* async_hooks**:
* Merge `run` and `exit` methods (Andrey Pechkurov)
#31950
* Prevent sync methods of async storage exiting outer context
(Stephen Belanger)
#31950
* vm:
* Add `importModuleDynamically` option to compileFunction (Gus
Caplan)
#32985
New core collaborators:
With this release, we welcome two new Node.js core collaborators:
* Juan José Arboleda @juanarbol
#32906
* Andrey Pechkurov @puzpuzpuz
#32817
PR-URL: #33122
PR-URL: #31950 Reviewed-By: Vladimir de Turckheim <[email protected]> Reviewed-By: Gerhard Stöbich <[email protected]>
PR-URL: #31950 Reviewed-By: Vladimir de Turckheim <[email protected]> Reviewed-By: Gerhard Stöbich <[email protected]>
Notable Changes:
* async_hooks**:
* Merge `run` and `exit` methods (Andrey Pechkurov)
#31950
* Prevent sync methods of async storage exiting outer context
(Stephen Belanger)
#31950
* vm:
* Add `importModuleDynamically` option to compileFunction (Gus
Caplan)
#32985
New core collaborators:
With this release, we welcome two new Node.js core collaborators:
* Juan José Arboleda @juanarbol
#32906
* Andrey Pechkurov @puzpuzpuz
#32817
PR-URL: #33122
Notable Changes:
* async_hooks**:
* Merge `run` and `exit` methods (Andrey Pechkurov)
#31950
* Prevent sync methods of async storage exiting outer context
(Stephen Belanger)
#31950
* vm:
* Add `importModuleDynamically` option to compileFunction (Gus
Caplan)
#32985
New core collaborators:
With this release, we welcome two new Node.js core collaborators:
* Juan José Arboleda @juanarbol
#32906
* Andrey Pechkurov @puzpuzpuz
#32817
PR-URL: #33122
|
@Qard Sorry if I misunderstand something, but was this merged only to 12.x but not to 14.x? |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
@kibertoad a683e87 is the commit that landed on 14.x branch and is released with v14.0.0. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Successfully merging this pull request may close these issues.
There was an error while loading. Please reload this page.