Open serathius opened 1 day ago
I can take a look at this.
Without PR #11639, MemberList returns local membership configuration without linearizable guarantee. The removed member may show up in the member list response. The issue is fixed in 3.5 and above so it shall be specific to 3.4.
Without PR #11639, MemberList returns local membership configuration without linearizable guarantee. The removed member may show up in the member list response.
Thanks for the analysis. One workaround is to issue a linearizable read request in between for 3.4.
Bug report criteria
What happened?
In last robustness meeting we identified 3 flakes for memberReplace
All happening on release-3.4 and TestRobustnessExploratory/KubernetesHighTraffic/ClusterOfSize3/MemberReplace test
What did you expect to happen?
Issue not being specific to release-3.4
How can we reproduce it (as minimally and precisely as possible)?
There is no way to select failpoints via test name, but you can modify
allFailpoints
in test/robustness/failpoint/failpoint.go to leave only MemberReplaceAnd run it with
GO_TEST_FLAGS='-v --run TestRobustnessExploratory/KubernetesHighTraffic/ClusterOfSize3 --count 100 --failfast --timeout 1h' make test-robustness-release-3.4
Anything else we need to know?
No response
Etcd version (please run commands below)
release-3.4 branch
Etcd configuration (command line flags or environment variables)
Etcd debug information (please run commands below, feel free to obfuscate the IP address or FQDN in the output)
Relevant log output
No response