-
Notifications
You must be signed in to change notification settings - Fork 204
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
TIMEOUT CONNECTION_CLOSE error #3126
Comments
If so, it should probably distinguish between idle timeout and handshake timeout. |
I think the transport doc currently suggests using NO_ERROR. There are no other suggested uses of NO_ERROR, so this seems like it is functionally equivalent to a TIMEOUT error code?
|
@ianswett When I read that, it doesn't really sound like it's describing a timeout condition, just that one side is about to enter the draining state and it may send a CONNECTION_CLOSE packet to increase the chances the other side also moves to the draining state. NO_ERROR doesn't seem that useful to me. |
If my understanding of the spec is correct, you're not supposed to send a CONNECTION_CLOSE when you detect a timeout, since you don't expect it to be received anyway. |
I was thinking about the case where the idle timeout is long and a peer would be stuck retransmitting data until it hits the idle timeout. Right now, it can send NO_ERROR, but it just seems like having a specific error code for timeouts would help. I agree that there's no need to send anything after we reach the idle timeout. |
I prefer more error codes over fewer, especially for cases like this that may be quite common. Even if we use NO_ERROR, I think we should specify what the error code to send is in the case you're mentioning. |
Why would this condition need to be signaled? |
@martinthomson I think it could help identify problems when the link is asymmetrically broken and you don't have access to the state of the server. |
Discussed in ZRH. Proposed resolution is to close with no action. |
Perhaps we should have a TIMEOUT error code? Connection timeouts are extremely common. It would help implementations detect timeout conditions without having to parse the connection_close error string. One could argue that a timeout isn't an error, but we already have SERVER_BUSY.
The text was updated successfully, but these errors were encountered: