-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Should be possible to set an actual revision timeout (max duration, not first byte) #10851
Comments
Is this separate from #10852? The two seem related/duplicate. If we're updating the timeout lifecycle, it seems like it would be reasonable to have one issue to track both knobs. /triage needs-user-input |
I think they're two separate features. One is an idle timeout, one is the maximum length of a "function"/request. It's easy to imagine us only implementing/prioritising one or the other, and I definitely think a PR that did both at once would be too big. |
This issue is stale because it has been open for 90 days with no |
/remove-lifecycle stale I still think this is good, I just didn’t get to it yet |
I'm going to guess here: /good-first-issue /remove-triage needs-user-input |
@evankanderson: Please ensure the request meets the requirements listed here. If this request no longer meets these requirements, the label can be removed In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
@julz you mind if I work on this? |
Yeah 👍 |
Back to this, now that idle timeout final piece is close to merge. |
/area API
Describe the feature
The revision spec.TimeoutSeconds feature was changed at some point to only be a timeout until the first byte of the response is sent. This is useful for WebSocket apps because it avoids timing out idle long running websockets. Unfortunately it defeats quite a lot of the point of a timeout because it doesn't stop requests running for an arbitrarily long time. This makes it hard to ensure it's safe to drain a node or avoid infinite-looping requests costing money for unbounded periods (absent a liveness check, anyway).
We should add a MaxDurationSeconds field to the spec to limit the actual max duration a request can run. This would be useful for users and operators who want to set an actual max duration a request/function can run. To avoid problems with websockets this would be an optional field defaulting to 0=infinity.
The text was updated successfully, but these errors were encountered: