You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Existing open issues along with etcd frequently asked questions have been checked and this is not a duplicate.
What happened?
I was testing out the new experimental health checks: #17914
What I found is that if there was a learner in the cluster, the RPCs would fail with:
{"level":"warn","ts":"2024-10-05T01:35:11.309621Z","logger":"etcd-client","caller":"io_etcd_go_etcd_client_v3/retry_interceptor.go:63","msg":"retrying of unary invoker failed","target":"etcd-endpoints://0xc0011bc780/10.247.133.150:5000","attempt":0,"error":"rpc error: code = DeadlineExceeded desc = latest balancer error: last connection error: connection active but received health check RPC error: rpc error: code = Unavailable desc = etcdserver: rpc not supported for learner"}
I believe this comes from here where we modify what RPCs learners implement:
Bug report criteria
What happened?
I was testing out the new experimental health checks: #17914
What I found is that if there was a learner in the cluster, the RPCs would fail with:
I believe this comes from here where we modify what RPCs learners implement:
etcd/server/etcdserver/api/v3rpc/util.go
Line 142 in 7cded36
Should we allow learners to receive grpc health checks?
What did you expect to happen?
Learners do not cause RPCs to fail when
experimental-stop-grpc-service-on-defrag
is enabled.How can we reproduce it (as minimally and precisely as possible)?
Enable
experimental-stop-grpc-service-on-defrag
, make a learner, create an etcd client with the following grpc service config:Anything else we need to know?
No response
Etcd version (please run commands below)
Etcd configuration (command line flags or environment variables)
paste your configuration here
Etcd debug information (please run commands below, feel free to obfuscate the IP address or FQDN in the output)
Relevant log output
No response
The text was updated successfully, but these errors were encountered: