Rather than have a timeout for every operation in Halibut, split out the special timeouts and let the rest be covered by TcpClientTimeout.
This adds a new timeout TcpListeningNextRequestIdleTimeout which is the amount of time the listening service will wait for another request to be sent to it before timing out and closing the TCP connection. Previously it was set to TcpClientTimeout
Adds a RecommendedValues() which returns the recommended values for HalibutTimeoutsAndLimits.
some test timeouts are bumped since those low timeouts apply in more places and so increase the chance of failure.
How to review this PR
Quality :heavy_check_mark:
Read the [HalibutTimeoutsAndLimits.cs](https://github.com/OctopusDeploy/Halibut/pull/553/files#diff-75aab142e5800f7b568155e3b13e51d403fb29773dc6a6872341943fae8f9821) top to bottom and see if it makes sense.
Pre-requisites
[ ] I have read How we use GitHub Issues for help deciding when and where it's appropriate to make an issue.
[ ] I have considered informing or consulting the right people, according to the ownership map.
[ ] I have considered appropriate testing for my change.
Background
Rather than have a timeout for every operation in Halibut, split out the special timeouts and let the rest be covered by
TcpClientTimeout
.This adds a new timeout
TcpListeningNextRequestIdleTimeout
which is the amount of time the listening service will wait for another request to be sent to it before timing out and closing the TCP connection. Previously it was set toTcpClientTimeout
Adds a
RecommendedValues()
which returns the recommended values forHalibutTimeoutsAndLimits
.some test timeouts are bumped since those low timeouts apply in more places and so increase the chance of failure.
How to review this PR
Quality :heavy_check_mark:
Read the
[HalibutTimeoutsAndLimits.cs](https://github.com/OctopusDeploy/Halibut/pull/553/files#diff-75aab142e5800f7b568155e3b13e51d403fb29773dc6a6872341943fae8f9821)
top to bottom and see if it makes sense.Pre-requisites