Skip to content

Conversation

@apapirovski
Copy link
Contributor

This is a backport of #15791 as requested.

/cc @MylesBorins

Checklist
  • make -j4 test (UNIX), or vcbuild test (Windows) passes
  • tests and/or benchmarks are included
  • commit message follows commit guidelines
Affected core subsystem(s)

net, tls, test

@apapirovskiapapirovski added net Issues and PRs related to the net subsystem. tls Issues and PRs related to the tls subsystem. labels Oct 23, 2017
@nodejs-github-botnodejs-github-bot added build Issues and PRs related to build files or the CI. doc Issues and PRs related to the documentations. meta Issues and PRs related to the general management of the project. tools Issues and PRs related to the tools directory. labels Oct 23, 2017
@apapirovskiapapirovski changed the base branch from master to v6.x-stagingOctober 23, 2017 22:41
@apapirovskiapapirovski removed build Issues and PRs related to build files or the CI. doc Issues and PRs related to the documentations. meta Issues and PRs related to the general management of the project. tools Issues and PRs related to the tools directory. labels Oct 23, 2017
@MylesBorins
Copy link
Contributor

@apapirovski a bit confused... doesn't seem like I requested this backport in the issue. Did we cross wires?

@apapirovski
Copy link
ContributorAuthor

apapirovski commented Oct 23, 2017

@MylesBorins You did in our conversation earlier. The name of the issue might just be a tad confusing. See #13391

Either way, even if you hadn't, this should be back-ported given that it's a serious bug. But if you don't want this back-ported for v4.x let me know as I'm almost done.

@MylesBorins
Copy link
Contributor

@apapirovski AHHHHHH... thanks ☺️

This is slated to land in 8.8.0. Which means that we can likely land it in the following 6.x release, and a future 4.x maintenance release (assuming we get signoff on the backport)

@apapirovskiapapirovski added c++ Issues and PRs that require attention from people who are familiar with C++. lib / src Issues and PRs related to general changes in the lib or src directory. v6.x labels Oct 23, 2017
@apapirovski
Copy link
ContributorAuthor

@MylesBorinsMylesBorins changed the base branch from v6.x-staging to v6.xOctober 25, 2017 08:08
@MylesBorinsMylesBorins changed the base branch from v6.x to v6.x-stagingOctober 25, 2017 08:08
@apapirovskiapapirovskiforce-pushed the backport-15791-to-v6.x branch from b6ed49b to 7feac5cCompareOctober 25, 2017 12:35
@apapirovski
Copy link
ContributorAuthor

CI is all green (failure unrelated) and I've rebased.

@apapirovskiapapirovski added the blocked PRs that are blocked by other issues or PRs. label Oct 25, 2017
@apapirovski
Copy link
ContributorAuthor

This is blocked because of #16484 — working on a PR which will then need to be applied here.

@apapirovskiapapirovski removed the blocked PRs that are blocked by other issues or PRs. label Oct 25, 2017
@apapirovski
Copy link
ContributorAuthor

Last commit is technically from a different PR but this shouldn't land without it.

CI: https://ci.nodejs.org/job/node-test-pull-request/10978/

@mcollina
Copy link
Member

I think this should wait for some more time before backporting (if at all).

@mcollinamcollina added the baking-for-lts PRs that need to wait before landing in a LTS release. label Oct 26, 2017
Make writeQueueSize represent the actual size of the write queue within the TLS socket. Add tls test to confirm that bufferSize works as expected. PR-URL: nodejs#15791Fixes: nodejs#15005 Refs: nodejs#15006 Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: Matteo Collina <[email protected]> Reviewed-By: Refael Ackermann <[email protected]> Reviewed-By: Fedor Indutny <[email protected]>
Add updateWriteQueueSize which updates and returns queue size (net & tls). Make _onTimeout check whether an active write is ongoing and if so, call _unrefTimer rather than emitting a timeout event. Add http & https test that checks whether long-lasting (but active) writes timeout or can finish writing as expected. PR-URL: nodejs#15791Fixes: nodejs#15082 Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: Matteo Collina <[email protected]> Reviewed-By: Refael Ackermann <[email protected]> Reviewed-By: Fedor Indutny <[email protected]>
This commit handles the case where _onTimeout is called with a null handle. Refs: nodejs#15791Fixes: nodejs#16484 PR-URL: nodejs#16489 Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Refael Ackermann <[email protected]>
@MylesBorins
Copy link
Contributor

@mcollina is this ready to land?

@mcollina
Copy link
Member

@MylesBorins no. This PR introduced #16484 which was fixed in #16489.
If they are backported, they are backported together.
What's the process for this? I'd be inclined to have two commits in this same PR.

@apapirovski
Copy link
ContributorAuthor

@mcollina the commit from that second PR is in here

Copy link
Member

@mcollinamcollina left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

MylesBorins pushed a commit that referenced this pull request Dec 20, 2017
Make writeQueueSize represent the actual size of the write queue within the TLS socket. Add tls test to confirm that bufferSize works as expected. Backport-PR-URL: #16420 PR-URL: #15791Fixes: #15005 Refs: #15006 Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: Matteo Collina <[email protected]> Reviewed-By: Refael Ackermann <[email protected]> Reviewed-By: Fedor Indutny <[email protected]>
MylesBorins pushed a commit that referenced this pull request Dec 20, 2017
Add updateWriteQueueSize which updates and returns queue size (net & tls). Make _onTimeout check whether an active write is ongoing and if so, call _unrefTimer rather than emitting a timeout event. Add http & https test that checks whether long-lasting (but active) writes timeout or can finish writing as expected. Backport-PR-URL: #16420 PR-URL: #15791Fixes: #15082 Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: Matteo Collina <[email protected]> Reviewed-By: Refael Ackermann <[email protected]> Reviewed-By: Fedor Indutny <[email protected]>
MylesBorins pushed a commit that referenced this pull request Dec 20, 2017
This commit handles the case where _onTimeout is called with a null handle. Backport-PR-URL: #16420 Refs: #15791Fixes: #16484 PR-URL: #16489 Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Refael Ackermann <[email protected]>
@MylesBorins
Copy link
Contributor

landed in 612baca...15d855d

@apapirovskiapapirovski deleted the backport-15791-to-v6.x branch January 2, 2018 16:26
MylesBorins pushed a commit that referenced this pull request Jan 2, 2018
Make writeQueueSize represent the actual size of the write queue within the TLS socket. Add tls test to confirm that bufferSize works as expected. Backport-PR-URL: #16420 PR-URL: #15791Fixes: #15005 Refs: #15006 Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: Matteo Collina <[email protected]> Reviewed-By: Refael Ackermann <[email protected]> Reviewed-By: Fedor Indutny <[email protected]>
MylesBorins pushed a commit that referenced this pull request Jan 2, 2018
Add updateWriteQueueSize which updates and returns queue size (net & tls). Make _onTimeout check whether an active write is ongoing and if so, call _unrefTimer rather than emitting a timeout event. Add http & https test that checks whether long-lasting (but active) writes timeout or can finish writing as expected. Backport-PR-URL: #16420 PR-URL: #15791Fixes: #15082 Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: Matteo Collina <[email protected]> Reviewed-By: Refael Ackermann <[email protected]> Reviewed-By: Fedor Indutny <[email protected]>
MylesBorins pushed a commit that referenced this pull request Jan 2, 2018
This commit handles the case where _onTimeout is called with a null handle. Backport-PR-URL: #16420 Refs: #15791Fixes: #16484 PR-URL: #16489 Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Refael Ackermann <[email protected]>
@MylesBorinsMylesBorins removed the baking-for-lts PRs that need to wait before landing in a LTS release. label Aug 17, 2018
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

c++Issues and PRs that require attention from people who are familiar with C++.lib / srcIssues and PRs related to general changes in the lib or src directory.netIssues and PRs related to the net subsystem.tlsIssues and PRs related to the tls subsystem.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants

@apapirovski@MylesBorins@mcollina@refack@nodejs-github-bot