Skip to content

fix(synccontrols): implement proper lifecycle for XSet deletion#33

Open
AnnaYue wants to merge 2 commits intomainfrom
fix/deletion-lifecycle
Open

fix(synccontrols): implement proper lifecycle for XSet deletion#33
AnnaYue wants to merge 2 commits intomainfrom
fix/deletion-lifecycle

Conversation

@AnnaYue
Copy link
Copy Markdown
Contributor

@AnnaYue AnnaYue commented Mar 25, 2026

修改 BatchDeleteTargetsByLabel 函数,使其遵循与 scale-in 相同的生命周期模式:

  1. 触发 TargetOpsLifecycle (opslifecycle.Begin)
  2. 等待操作许可 (opslifecycle.AllowOps)
  3. 直接删除目标 (DeleteTarget)
  4. 清理 PVC 资源

之前该函数仅添加 to-delete 标签,需要额外的控制器来处理删除。
现在直接处理删除,与 scale-in 保持一致。

1. Does this PR affect any open issues?(Y/N) and add issue references (e.g. "fix #123", "re #123".):

  • N
  • Y

2. What is the scope of this PR (e.g. component or file name):

3. Provide a description of the PR(e.g. more details, effects, motivations or doc link):

  • Affects user behaviors
  • Contains syntax changes
  • Contains variable changes
  • Contains experimental features
  • Performance regression: Consumes more CPU
  • Performance regression: Consumes more Memory
  • Other

4. Are there any breaking changes?(Y/N) and describe the breaking changes(e.g. more details, motivations or doc link):

  • N
  • Y

5. Are there test cases for these changes?(Y/N) select and add more details, references or doc links:

  • Unit test
  • Integration test
  • Benchmark (add benchmark stats below)
  • Manual test (add detailed scripts or steps below)
  • Other

6. Release note

Please refer to Release Notes Language Style Guide to write a quality release note.

None

修改 BatchDeleteTargetsByLabel 函数,使其遵循与 scale-in 相同的生命周期模式:

1. 触发 TargetOpsLifecycle (opslifecycle.Begin)
2. 等待操作许可 (opslifecycle.AllowOps)
3. 直接删除目标 (DeleteTarget)
4. 清理 PVC 资源

之前该函数仅添加 to-delete 标签,需要额外的控制器来处理删除。
现在直接处理删除,与 scale-in 保持一致。
@AnnaYue AnnaYue requested a review from ColdsteelRail March 25, 2026 03:44
…etsByLabel

PVC cleanup is already handled by ensureReclaimPvcs in xset_controller.go
before BatchDeleteTargetsByLabel is called. The previous PVC deletion code
was broken because DeleteTargetPvcs requires the pvcs parameter which was nil.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
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.

1 participant