-
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
http2: fix client async storage persistence #55460
Conversation
Review requested:
|
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #55460 +/- ##
=======================================
Coverage 88.42% 88.42%
=======================================
Files 654 654
Lines 187552 187561 +9
Branches 36087 36090 +3
=======================================
+ Hits 165839 165854 +15
- Misses 14950 14956 +6
+ Partials 6763 6751 -12
|
I'll try to improve it and use internals instead of AsyncResource. |
I didn't find a better solution. Open for suggestions :) |
@mcollina Any comments? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm
However I'm concerned that this will add overhead.
Are headers received only once per stream? If they are, we can unset the resource after using it in |
Renamed |
This comment was marked as outdated.
This comment was marked as outdated.
The failures are unrelated to my changes.
https://ci.nodejs.org/job/node-test-commit-osx-arm/17293/nodes=osx11/console
Is it possible to retrigger these? |
Create and store an AsyncResource for each stream, following a similar approach as used in HttpAgent. Fixes: nodejs#55376
Rebased. |
@lpinca Can you please trigger CI again? |
This comment was marked as outdated.
This comment was marked as outdated.
@lpinca the failures look random and unrelated to my changes. How do we proceed from here? |
Passed! Thank you. |
How do we proceed from here? |
Commit Queue failed- Loading data for nodejs/node/pull/55460 ✔ Done loading data for nodejs/node/pull/55460 ----------------------------------- PR info ------------------------------------ Title http2: fix client async storage persistence (#55460) Author Orgad Shaneh <orgads@gmail.com> (@orgads) Branch orgads:http2-async -> nodejs:main Labels http2, needs-ci Commits 1 - http2: fix client async storage persistence Committers 1 - Orgad Shaneh <orgad.shaneh@audiocodes.com> PR-URL: https://github.com/nodejs/node/pull/55460 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Stephen Belanger <admin@stephenbelanger.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> ------------------------------ Generated metadata ------------------------------ PR-URL: https://github.com/nodejs/node/pull/55460 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Stephen Belanger <admin@stephenbelanger.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> -------------------------------------------------------------------------------- ⚠ Commits were pushed since the last approving review: ⚠ - http2: fix client async storage persistence ℹ This PR was created on Sat, 19 Oct 2024 20:46:33 GMT ✔ Approvals: 3 ✔ - James M Snell (@jasnell) (TSC): https://github.com/nodejs/node/pull/55460#pullrequestreview-2380687991 ✔ - Stephen Belanger (@Qard): https://github.com/nodejs/node/pull/55460#pullrequestreview-2384391523 ✔ - Matteo Collina (@mcollina) (TSC): https://github.com/nodejs/node/pull/55460#pullrequestreview-2382123844 ✔ Last GitHub CI successful ℹ Last Full PR CI on 2024-10-27T05:45:51Z: https://ci.nodejs.org/job/node-test-pull-request/63307/ - Querying data for job/node-test-pull-request/63307/ ✔ Last Jenkins CI successful -------------------------------------------------------------------------------- ✔ Aborted `git node land` session in /home/runner/work/node/node/.ncuhttps://github.com/nodejs/node/actions/runs/11594005797 |
Landed in f67e45e |
Thank you all! What's the process for backporting it to 22.x? |
Create and store an AsyncResource for each stream, following a similar approach as used in HttpAgent. Fixes: #55376 PR-URL: #55460 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Stephen Belanger <admin@stephenbelanger.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de>
Create and store an AsyncResource for each stream, following a similar approach as used in HttpAgent. Fixes: nodejs#55376 PR-URL: nodejs#55460 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Stephen Belanger <admin@stephenbelanger.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de>
@orgads Usually this goes automatically. First it will land on 23 and later on 22. In case cherry-picking this commit from main to the release branch fails for some reason a label + comment will be added here indicating it requires a dedicated manual created backport PR. |
Thank you. |
Create and store an AsyncResource for each stream, following a similar approach as used in HttpAgent.
Fixes #55376