Skip to content
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: add Http2Stream.bufferSize #23711

Closed
wants to merge 2 commits into from

Conversation

oyyd
Copy link
Contributor

@oyyd oyyd commented Oct 17, 2018

This commit adds bufferSize for Http2Stream.

Refs: #21631

/cc @jasnell @addaleax @apapirovski

From the code, I believe the writeQueueSize in http2 module could represent the kLastWriteQueueSize in net module:

node/lib/net.js

Line 518 in deaddd2

return this[kLastWriteQueueSize] + this.writableLength;

and the tests following this PR seems okay. Can you help to confirm that?

BTW, we can add Http2Session.bufferSize basing on this which is what #21631 exactly requested.

Checklist
  • make -j4 test (UNIX), or vcbuild test (Windows) passes
  • tests and/or benchmarks are included
  • documentation is changed or added
  • commit message follows commit guidelines

@nodejs-github-bot nodejs-github-bot added dont-land-on-v6.x http2 Issues or PRs related to the http2 subsystem. labels Oct 17, 2018
This commit adds `bufferSize` for `Http2Stream`.

Refs: nodejs#21631
@oyyd oyyd force-pushed the http2-stream-buffersize branch from f2264e6 to d7d9307 Compare October 17, 2018 12:39
get bufferSize() {
// `bufferSize` properties of `net.Socket` are `undefined` when
// their `_handle` are falsy. Here we avoid the behavior.
return this[kState].writeQueueSize + this.writableLength;
Copy link
Member

Choose a reason for hiding this comment

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

At best this is likely an approximation with a high degree of accuracy at any given time. It's likely good enough :-)

What do you think @addaleax?

Copy link
Member

Choose a reason for hiding this comment

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

I’d guess it’s good enough, yes :)

@jasnell jasnell added the semver-minor PRs that contain new features and should be released in the next minor version. label Oct 17, 2018
doc/api/http2.md Outdated
@@ -1012,6 +1012,15 @@ added: v8.4.0
Set to `true` if the `Http2Stream` instance was aborted abnormally. When set,
the `'aborted'` event will have been emitted.

### http2stream.bufferSize
Copy link
Contributor

Choose a reason for hiding this comment

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

Nit:

Suggested change
### http2stream.bufferSize
#### http2stream.bufferSize

doc/api/http2.md Outdated
@@ -3418,6 +3427,7 @@ following additional properties:
[`net.Socket.prototype.ref()`]: net.html#net_socket_ref
[`net.Socket.prototype.unref()`]: net.html#net_socket_unref
[`net.connect()`]: net.html#net_net_connect
[`net.Socket.bufferSize`]: net.html#net_socket_buffersize
Copy link
Contributor

@vsemozhetbyt vsemozhetbyt Oct 17, 2018

Choose a reason for hiding this comment

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

Nit: should go after [`net.Socket`]: net.html#net_class_net_socket (in ASCII sort order).

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Thanks! Done.

@BridgeAR
Copy link
Member

@oyyd
Copy link
Contributor Author

oyyd commented Oct 20, 2018

The test, parallel/test-tls-alert-handling, failed seems unrelated.

@lundibundi
Copy link
Member

lundibundi commented Oct 20, 2018

Trott pushed a commit to Trott/io.js that referenced this pull request Nov 6, 2018
This commit adds `bufferSize` for `Http2Stream`.

Refs: nodejs#21631

PR-URL: nodejs#23711
Reviewed-By: James M Snell <jasnell@gmail.com>
@Trott
Copy link
Member

Trott commented Nov 6, 2018

Landed in 33fbb93

@Trott Trott closed this Nov 6, 2018
targos pushed a commit that referenced this pull request Nov 6, 2018
This commit adds `bufferSize` for `Http2Stream`.

Refs: #21631

PR-URL: #23711
Reviewed-By: James M Snell <jasnell@gmail.com>
BethGriggs pushed a commit that referenced this pull request Apr 8, 2019
This commit adds `bufferSize` for `Http2Stream`.

Refs: #21631

PR-URL: #23711
Reviewed-By: James M Snell <jasnell@gmail.com>
@BethGriggs BethGriggs mentioned this pull request May 1, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
http2 Issues or PRs related to the http2 subsystem. semver-minor PRs that contain new features and should be released in the next minor version.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants