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

reverseproxy: fix random hangs on http/2-requests with Server Pushes #3875

Merged
merged 1 commit into from
Nov 18, 2020
Merged

reverseproxy: fix random hangs on http/2-requests with Server Pushes #3875

merged 1 commit into from
Nov 18, 2020

Conversation

dtelyukh
Copy link
Contributor

@dtelyukh dtelyukh commented Nov 18, 2020

@CLAassistant
Copy link

CLAassistant commented Nov 18, 2020

CLA assistant check
All committers have signed the CLA.

@mholt mholt changed the title reverseproxy: fix random hangs on http/2-requests with Server Pushes (see https://github.com/golang/go/issues/42534) reverseproxy: fix random hangs on http/2-requests with Server Pushes Nov 18, 2020
Copy link
Member

@mholt mholt left a comment

Choose a reason for hiding this comment

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

Very interesting! Thanks for diving in with others and helping to make a fix happen. We really appreciate it. 💯

@mholt mholt merged commit 6ea6f3e into caddyserver:master Nov 18, 2020
@mholt mholt added this to the v2.3.0 milestone Nov 18, 2020
@mholt mholt added bug 🐞 Something isn't working upstream ⬆️ Relates to some dependency of this project labels Nov 18, 2020
mholt added a commit that referenced this pull request Nov 20, 2020
* implement default values for header directive

closes #3804

* remove `set_default` header op and rely on "require" handler instead

This has the following advantages over the previous attempt:

- It does not introduce a new operation for headers, but rather nicely
  extends over an existing feature in the header handler.
- It removes the need to specify the header as "deferred" because it is
  already implicitely deferred by the use of the require handler. This
  should be less confusing to the user.

* add integration test for header directive in caddyfile

* bubble up errors when parsing caddyfile header directive

* don't export unnecessarily and don't canonicalize headers unnecessarily

* fix response headers not passed in blocks

* caddyfile: fix clash when using default header in block

Each header is now set in a separate handler so that it doesn't clash
with other headers set/added/deleted in the same block.

* caddyhttp: New idle_timeout default of 5m

* reverseproxy: fix random hangs on http/2 requests with server push (#3875)

see golang/go#42534

* Refactor and cleanup with improvements

* More specific link

Co-authored-by: Matthew Holt <mholt@users.noreply.github.com>
Co-authored-by: Денис Телюх <telyukh.denis@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug 🐞 Something isn't working upstream ⬆️ Relates to some dependency of this project
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants