Skip to content

fix(dataprotection): terminate restores for deleting components - #10846

Open
leon-ape wants to merge 9 commits into
mainfrom
bugfix/10755-component-restore-termination
Open

fix(dataprotection): terminate restores for deleting components#10846
leon-ape wants to merge 9 commits into
mainfrom
bugfix/10755-component-restore-termination

Conversation

@leon-ape

@leon-ape leon-ape commented Sep 4, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • treat a still-observable, same-UID deleting Component as a Component-scoped restore termination signal
  • fan out Component deletion only to that Component restore PVCs, including terminal PVCs
  • delete only VP-owned execution/helper/target protection and the postReady Restore owned by the deleting Component
  • stop postReady progression after its Component starts deleting
  • preserve parent-authorized termination after target PVC protection has been handed off

This intentionally does not infer termination from a missing Component, support same-name replacement/UID takeover, scale-in, or add a Component finalizer.

Built on #10845, now merged into main.

Fixes #10755

@leon-ape leon-ape added the nopick Not auto cherry-pick when PR merged label Sep 4, 2026
@codecov

codecov Bot commented Sep 4, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 67.55102% with 159 lines in your changes missing coverage. Please review.
✅ Project coverage is 65.85%. Comparing base (63373ca) to head (6c861a9).
⚠️ Report is 2 commits behind head on main.

Files with missing lines Patch % Lines
...llers/dataprotection/volumepopulator_controller.go 63.22% 100 Missing and 39 partials ⚠️
...llers/dataprotection/cluster_restore_controller.go 82.14% 13 Missing and 7 partials ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main   #10846      +/-   ##
==========================================
+ Coverage   65.76%   65.85%   +0.08%     
==========================================
  Files         510      511       +1     
  Lines       64958    65470     +512     
==========================================
+ Hits        42721    43113     +392     
- Misses      18449    18528      +79     
- Partials     3788     3829      +41     
Flag Coverage Δ
unittests 65.85% <67.55%> (+0.08%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Base automatically changed from bugfix/10755-cluster-restore-lifecycle to main September 4, 2026 07:44
@github-actions github-actions Bot added the size/XXL Denotes a PR that changes 1000+ lines. label Sep 4, 2026
@leon-ape
leon-ape marked this pull request as ready for review September 4, 2026 07:44
@leon-ape
leon-ape requested review from a team, ldming and wangyelei as code owners September 4, 2026 07:44
…t-restore-termination

# Conflicts:
#	controllers/dataprotection/volumepopulator_controller.go
#	controllers/dataprotection/volumepopulator_controller_test.go
@github-actions github-actions Bot added size/L Denotes a PR that changes 100-499 lines. and removed size/XXL Denotes a PR that changes 1000+ lines. labels Sep 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

nopick Not auto cherry-pick when PR merged size/L Denotes a PR that changes 100-499 lines.

Projects

None yet

1 participant