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

HTTPProxy timeoutPolicy.response of "0s" (as mentioned in docs) is NOT infinite #2544

Closed
kevincantu opened this issue May 21, 2020 · 1 comment · Fixed by #2620
Closed

HTTPProxy timeoutPolicy.response of "0s" (as mentioned in docs) is NOT infinite #2544

kevincantu opened this issue May 21, 2020 · 1 comment · Fixed by #2620
Assignees
Labels
area/documentation Issues or PRs related to documentation. good first issue Denotes an issue ready for a new contributor, according to the "help wanted" guidelines. help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. lifecycle/accepted Denotes an issue that has been triaged and determined to be valid.
Milestone

Comments

@kevincantu
Copy link

kevincantu commented May 21, 2020

With contour 1.4.0, I've just attempted to set a timeoutPolicy.response, and "0s" doesn't seem to work.

I expected the value "0s" to mean an infinite timeout, as the docs describe:

timeoutPolicy.response This field can be any positive time period or “infinity”. The time period of 0s will also be treated as infinity. This timeout covers the time from the end of the client request to the end of the upstream response. By default, Envoy has a 15 second value for this timeout. More information can be found in Envoy’s documentation.
https://projectcontour.io/docs/v1.4.0/httpproxy/

First with "infinity" (as worked in the old Ingress annotation):

      timeoutPolicy:
        response: "infinity"
        idle: "355s"

That gives a timeout of zero in Envoy's /config_dump:

          "route": {
           "cluster": "default/myapp-service/5000/da33a3ff5e",
           "timeout": "0s",
           "idle_timeout": "355s"
          }

But then with "0s" (as described in the timeoutPolicy documentation):

      timeoutPolicy:
        response: "0s"
        idle: "355s"

That gives a default setting (no timeout field) in Envoy's /config_dump:

          "route": {
           "cluster": "default/myapp-service/5000/da33a3ff5e",
           "idle_timeout": "355s"
          }

So I have a workaround (setting timeoutPolicy.response to "infinity"), but either there's a bug or the docs are out of date. 😺

@jpeach
Copy link
Contributor

jpeach commented May 21, 2020

This looks like a documentation error. The latest version of the API reference describes timeoutPolicy accurately.

@jpeach jpeach added area/documentation Issues or PRs related to documentation. lifecycle/accepted Denotes an issue that has been triaged and determined to be valid. labels May 21, 2020
@jpeach jpeach added this to the 1.5.0 milestone May 21, 2020
@youngnick youngnick added good first issue Denotes an issue ready for a new contributor, according to the "help wanted" guidelines. help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. labels May 28, 2020
@jpeach jpeach modified the milestones: 1.5.0, Backlog May 28, 2020
@skriss skriss self-assigned this Jun 22, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/documentation Issues or PRs related to documentation. good first issue Denotes an issue ready for a new contributor, according to the "help wanted" guidelines. help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. lifecycle/accepted Denotes an issue that has been triaged and determined to be valid.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants