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

NIOHTTP2Handler should handle ChannelShouldQuiesceEvent #336

Open
fabianfett opened this issue Apr 11, 2022 · 1 comment
Open

NIOHTTP2Handler should handle ChannelShouldQuiesceEvent #336

fabianfett opened this issue Apr 11, 2022 · 1 comment

Comments

@fabianfett
Copy link
Member

SwiftNIOExtras offers a QuiescingHelper to gracefully shutdown servers. NIOHTTP2Handler should support shutting down a server connection, when the QuiescingHelper sends out a ChannelShouldQuiesceEvent:

  • Once NIOHTTP2Handler receives a ChannelShouldQuiesceEvent a GoAway frame should be send to the client and new incoming streams should be rejected.
  • Once all previously open streams have finished the connection should be closed.

In NIOHTTP1 the ChannelShouldQuiesceEvent support is implemented in HTTPServerPipelineHandler

@lmcd
Copy link

lmcd commented May 26, 2022

Hmm maybe this is why I was having issues performing a soft-restart of a HTTP/2 Vapor server.
I remember seeing quiesce/shutdown errors.

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

No branches or pull requests

2 participants