Skip to content

[branch-25.8.0] Backport MS-driven decommission and runtime config persistence (#523, #524) - #526

Merged
morningman merged 2 commits into
apache:branch-25.8.0from
Al-assad:backport-523-524-branch-25.8.0
Oct 20, 2026
Merged

morningman merged 2 commits into
apache:branch-25.8.0from
Al-assad:backport-523-524-branch-25.8.0

Conversation

@Al-assad

Copy link
Copy Markdown
Member

What problem does this PR solve?

Backport #524 and #523 to branch-25.8.0, in their upstream merge order:

Backport adaptations:

  • Regenerate deepcopy code against the release branch API, without importing unrelated readiness-probe changes.
  • Keep the runtime configuration PVC regression test and its fixtures without importing master-only storage-template tests.
  • Integrate decommission before the release branch's existing pre-apply and graceful rollout flow, retaining its graceful implementation and blocking attempts to disable an active decommission task.

Release note

DDC decommission scale-down now uses MS completion and FE synchronization before removing backends and reducing replicas. Mutable FE/BE/MS configuration can survive Pod replacement using suitable existing PVCs. Existing clusters retain their previous configuration behavior until explicitly migrated; migration instructions are included.

Check List (For Author)

  • Test
    • Unit Test
    • Regression test
  • Behavior changed:
    • Yes. Backported decommission and runtime configuration persistence behavior described above.
  • Does this need documentation?
    • Yes. Includes the original scaling guides and runtime configuration persistence guide.

Validation:

  • go test -race ./pkg/common/utils/metaservice ./pkg/common/utils/mysql ./pkg/common/utils/runtimeconfig ./pkg/controller/sub_controller/disaggregated_cluster/computegroups -count=1 -timeout=120s
  • KUBEBUILDER_ASSETS=<local Kubernetes 1.31.0 envtest binaries> go test ./... -skip '^Test_ClearResources$' -count=1 -timeout=120s
  • go vet ./...
  • go build ./cmd/operator ./cmd/dorisctl
  • PYTHONDONTWRITEBYTECODE=1 python3 -m unittest discover -s tools/tests -v (5 tests)
  • bash -n pkg/common/utils/runtimeconfig/prepare.sh
  • make manifests generate was run. It exposes existing release-branch CRD drift for graceful-action fields; that unrelated regeneration is excluded from this backport.
  • Changed Go files pass gofmt; git diff upstream/branch-25.8.0 --check passes.

Validation limits: the existing Test_ClearResources cases were excluded because the original PRs documented informer synchronization hangs. The first suite attempt lacked envtest binaries in the isolated worktree; rerunning with local binaries passed. No live Doris cluster validation was performed.

…e#524)

* [feature](operator) Persist mutable FE BE and MS configuration

Preserve mutable runtime configuration on existing safe PVCs while keeping user ConfigMaps unchanged. Record compatibility defaults for existing clusters and provide a verified opt-in migration tool.

* Retain runtime configuration PVCs during compute group scale-down

(cherry picked from commit d4ae3df)
* fix: use MS state for disaggregated BE decommission

* Fix MS instance query colon compatibility

(cherry picked from commit 7c6de21)
@morningman
morningman merged commit b2eaac7 into apache:branch-25.8.0 Oct 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants