Skip to content

fix(dataprotection): identify and route restore dependencies - #10844

Merged
leon-ape merged 1 commit into
mainfrom
bugfix/10755-restore-dependency-routing
Sep 4, 2026
Merged

fix(dataprotection): identify and route restore dependencies#10844
leon-ape merged 1 commit into
mainfrom
bugfix/10755-restore-dependency-routing

Conversation

@leon-ape

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

Copy link
Copy Markdown
Collaborator

Problem

VolumePopulator dependency events need stable Cluster and Component correlation without making those labels a deletion authorization mechanism.

Changes

  • carry the Cluster UID through VCT restore intent into target and internal restore resources
  • identify postReady Restore objects by their actual Component owner UID
  • map execution Restore events to the exact target PVC
  • map postReady events after the owner Component disappears
  • isolate dependency fan-out by Cluster UID and include terminal PVCs for terminal/deleting Restore events
  • keep all mappers enqueue-only; this PR adds no finalizer or deletion behavior

Compatibility

UID metadata is correlation only. Existing UID-less resources continue through the existing requeue path and are not migrated.

Tests

  • restore intent UID injection and cleanup
  • execution/postReady/Component/Cluster dependency mapping
  • terminal/deleting Restore fan-out
  • sharding and mismatched identity filtering
  • full controllers/dataprotection suite

Refs #10755

Split from #10777.

@leon-ape
leon-ape requested review from a team, ldming and wangyelei as code owners September 4, 2026 03:27
@apecloud-bot

Copy link
Copy Markdown
Collaborator

Auto Cherry-pick Instructions

Usage:
  - /nopick: Not auto cherry-pick when PR merged.
  - /pick: release-x.x [release-x.x]: Auto cherry-pick to the specified branch when PR merged.

Example:
  - /nopick
  - /pick release-1.1

CLA Recheck Instructions

Usage:
  - /recheck-cla: Trigger a re-check of CLA status for this pull request.
Example:
  - /recheck-cla

@github-actions github-actions Bot added the size/L Denotes a PR that changes 100-499 lines. label Sep 4, 2026
@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 82.45614% with 10 lines in your changes missing coverage. Please review.
✅ Project coverage is 65.86%. Comparing base (63373ca) to head (944d952).

Files with missing lines Patch % Lines
...llers/dataprotection/volumepopulator_controller.go 81.48% 6 Missing and 4 partials ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main   #10844      +/-   ##
==========================================
+ Coverage   65.76%   65.86%   +0.09%     
==========================================
  Files         510      510              
  Lines       64958    64996      +38     
==========================================
+ Hits        42721    42809      +88     
+ Misses      18449    18414      -35     
+ Partials     3788     3773      -15     
Flag Coverage Δ
unittests 65.86% <82.45%> (+0.09%) ⬆️

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.

@leon-ape

leon-ape commented Sep 4, 2026

Copy link
Copy Markdown
Collaborator Author

/approve

@apecloud-bot apecloud-bot added the approved PR Approved Test label Sep 4, 2026
@leon-ape
leon-ape merged commit 33b0827 into main Sep 4, 2026
63 of 68 checks passed
@leon-ape
leon-ape deleted the bugfix/10755-restore-dependency-routing branch September 4, 2026 04:10
@github-actions github-actions Bot added this to the Release 1.2.0 milestone Sep 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

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

Projects

None yet

2 participants