Replies: 2 comments
-
Server your client was connected to got disconnected from the leader, so it and client stopped receiving updates. To mitigate it you normally would pass WithRequireLeader in Go. This forces member that gets disconnected from leader to drop the watch, forcing your client to reconnect to other member. You might need to implement it for your C++ library. |
Beta Was this translation helpful? Give feedback.
-
@serathius Thanks for the metadata - I'll look into it further. Since the logs from all three etcd nodes show no leader loss, would the metadata set by WithRequiredLeader have had any effect?
The following log snippets were trimmed before and after the log entries, but no lines were removed from the first and last entries [leader] ./etcd-cluster-vgw5q9r9ls_ffecebfd-f754-4815-aa70-b5c11f02324c/etcd/0.log
[non-leader] ./etcd-cluster-zcsbrxvx5g_3e537e6a-ea25-4193-be24-830260f50a28/etcd/0.log
[non-leader] ./etcd-cluster-vchx2bq5kx_8ac2dcb9-80e2-4ab7-af02-cee267b3850c/etcd/0.log
|
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Etcd version: 3.5.17
Number of etcd instances: 3
There was an instance in my system where an etcd watch was triggered approximately 50 seconds after a key was deleted. The etcd logs for both the leader and non-leader nodes showed no warnings or errors. I couldn’t find any official etcd documentation explaining limitations or guarantees regarding the timing of watch events. The system experiences a significant amount of traffic to the etcd cluster, using both gRPC unary and streaming APIs.
Here is a simplified overview of the system:
There are three processes in my deployment. All three are written in C++ and communicate with the etcd cluster via gRPC.
Setup
Process A
Process B and C
Test Setup
The test have been run numerous time however there was once instance where both process B and C received the watch event around 50 seconds after a key deleted.
Is there a known issue or limitation on timing of watch event delivery?
Beta Was this translation helpful? Give feedback.
All reactions