pingcap / pingcap/tidb-operator
Is it possible to customize the upgrade sequence for different versions of a component?
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 1.3k
- Forks
- 540
- Avg merge
- 3d 2h
- Merged PRs (30d)
- 18
Description
Feature Request
Is your feature request related to a problem? Please describe:
We want to change the upgrade order for TiCDC, but we meet some compliable issues for different versions of TiCDC.
If TiCDC < 5.1.0, we want to upgrade tikv/pd first.
If TiCDC >= 5.1.0, we want to upgrade tikv/pd first.
You can see more in this doc. (In Chinese)
Describe the feature you'd like:
Support customizing the upgrade sequence for different versions of a component.
Now we have a fixed order: https://github.com/pingcap/tidb-operator/blob/80214d04e975f3967649707be693662fa2fa5270/pkg/manager/member/ticdc_upgrader.go#L50
Why the featue is needed:
We want to upgrade the ticdc first because the TiKV will make a breaking change. Then TiCDC can not connect to the new TiCDC if we upgrade TiKV first.
Describe alternatives you've considered:
None
Teachability, Documentation, Adoption, Migration Strategy:
None
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with pkg/manager/member/ticdc_upgrader.go at the linked upgrade-order logic, then read the linked Chinese design document for the version-specific requirements. Confirm the intended order for TiCDC, TiKV, and PD in each version range, and inspect nearby upgrade tests if present. Done means the operator supports the requested version-dependent sequence and verifies it with tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go, kubernetes
- Domain
- infrastructure, release
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100