-
Notifications
You must be signed in to change notification settings - Fork 10.1k
Remove checking confState
during schema migration
#20494
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
Conversation
Fix #20495 |
The field confState was added since etcd v3.5. If an etcd cluster was created since v3.4, then it wouldn't have this field. In 3.5+, the field will only be automatically populated during conf change (i.e. add/remove/update member). So when upgrading from 3.4 to 3.5, and from 3.5 to 3.6, the field will never be populated unless users add or remove or update members. Note if you can't reproduce this issue, it should be because that there is no v2 snapshot, and etcdserver will replay all WAL records (including add member records) on bootstrap. Signed-off-by: Benjamin Wang <[email protected]>
2c3965e
to
c02e65d
Compare
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files
... and 34 files with indirect coverage changes @@ Coverage Diff @@
## main #20494 +/- ##
==========================================
- Coverage 69.24% 69.09% -0.16%
==========================================
Files 418 415 -3
Lines 34699 34561 -138
==========================================
- Hits 24028 23880 -148
+ Misses 9275 9274 -1
- Partials 1396 1407 +11 Continue to review full report in Codecov by Sentry.
🚀 New features to boost your workflow:
|
/test pull-etcd-integration-4-cpu-amd64 |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: ahrtr, serathius The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
/cherry-pick release-3.6 |
@ahrtr: new pull request created: #20496 In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
The field
confState
was added since etcd v3.5. If an etcd cluster was created since v3.4, then it wouldn't have this field. In 3.5+, the field will only be automatically populated during conf change (i.e. add/remove/update member). So when upgrading from 3.4 to 3.5, and from 3.5 to 3.6, the field will never be populated unless users add or remove or update members.Note if you can't reproduce this issue, it should be because that there is no v2 snapshot, and etcdserver will replay all WAL records (including add member records) on bootstrap.
See also #20446 (reply in thread)
Please read https://github.com/etcd-io/etcd/blob/main/CONTRIBUTING.md#contribution-flow.