-
Notifications
You must be signed in to change notification settings - Fork 9.7k
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
client: renew index on watch timeouts #1292
Comments
Do we need this in etcd proper for 0.5? Does that mean we're pushing |
I must be hitting this bug now. Currently the go-etcd library does not produce an error when timeouts happen and watches seem to be broken after the timeout. Maybe I'm just doing it wrong: https://github.com/kelseyhightower/flannel-route-manager/blob/master/server/server.go#L126 |
@jonboulle More context for this issue: |
Capturing OOB discussion: We only send |
Also to be clear there are two timeouts (at least) that we need to deal with:
|
@unihorn After thinking about it a bit more and looking at the chunked transfer encoding spec, I am wondering if we should send try to send another (Still doesn't help with 504s, but I'm anticipating that they're dramatically less common) |
@jonboulle |
@unihorn you mean, resume a watch? Don't we need to track sessions then? |
@jonboulle I mean resume/relaunch watch. |
@unihorn how do you propose for etcd to do resume/relaunch without sessions? |
@yichengq @jonboulle For 0.4x, when there is a watch timeout the client can:
We will introduce more reliable watching mechanism in the new api. |
When watch timeouts, it will receive a etcd timeout error. Then it should renew index on watch based on
X-ETCD-INDEX
at the header of the response.The text was updated successfully, but these errors were encountered: