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

too many flush in http2 write end header #13232

Open
icodening opened this issue Feb 19, 2023 · 2 comments · May be fixed by #13244
Open

too many flush in http2 write end header #13232

icodening opened this issue Feb 19, 2023 · 2 comments · May be fixed by #13244

Comments

@icodening
Copy link

Expected behavior

do not flush when writing end header, I will call ctx.flush()

Actual behavior

when I call ctx.write(new DefaultHttp2HeadersFrame(headers, true), promise), flush is also called
invoke flush when notifyClosed stream,
image

image

Steps to reproduce

Minimal yet complete reproducer code (or URL to code)

Netty version

4.1.87.Final

JVM version (e.g. java -version)

1.8.0_231

OS version (e.g. uname -a)

19.6.0 Darwin Kernel Version 19.6.0

@EarthChen
Copy link

EarthChen commented Feb 19, 2023

The problem is that there is no way to override it now, all related classes and methods are final or package private.

Our scenario is that we will flush in batches. Now when each streamchannel close, it will flush, which will cause the batch flush to fail

@icodening
Copy link
Author

@normanmaurer PTAL
This is a PR about flush. #10075

@icodening icodening linked a pull request Feb 26, 2023 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants