Skip to content

[DR][P1] 원본 단절 중 오래된 보호 스냅샷이 완료된 작업의 정리 메뉴를 비활성화 #985

Description

@dhslove

부모 에픽: #950. 관련: #971, #981. 우선순위 P1.

실환경 재현

31(qcow2), 32(RBD) 클러스터에서 원본 Mold TCP 8080 연결을 차단하고 원본 독립 Test Failover를 수행했다. 대상 VM 부팅 및 QGA 검증이 성공했고 Run은 SUCCEEDED, 세션은 ACTIVE이다. getDrPlan의 stopTestFailover.enabled=true인데 UI 정리 메뉴는 주기적 갱신 후 disabled가 된다. 새 페이지에서도 일시적으로 활성화됐다가 비활성화되어 정리를 진행하기 어렵다.

원인과 수정

DrPlanList.fetchProtectionView는 version>=4 보호 스냅샷을 authoritative로 간주하여 actionavailability를 갱신한다. 원본 상태 조회 실패 중에는 스냅샷이 대상 작업 완료보다 오래될 수 있다. 최초 fetchDetail의 최신 DB 병합만으로는 이후 polling의 덮어쓰기를 방지하지 못한다.

각 fetchProtectionView에서 getDrPlan의 DB 기반 응답도 읽고 reconcileDrPlanProjection으로 최신 작업 가능 상태를 최종 반영한다. 원본/Agent 직접 조회를 UI에 추가하지 않는다. 권한·readiness·실행 중 작업에 대한 서버 검사는 유지한다.

완료 기준

  • 원본 단절을 유지한 채 Test Failover SUCCEEDED 후 정리 메뉴가 활성 상태로 유지된다.
  • UI Test Cleanup이 성공하고 임시 VM 및 아티팩트가 정리된다.
  • 실제 진행 중 작업과 다른 서버 blocker를 우회하지 않는다.
  • 스냅샷과 DB 상태 불일치 회귀 검증 및 31/32 UI 검증을 기록한다.

#971 작업 브랜치에서 함께 수정·검증하며, 이 이슈는 실패 원인과 후속 추적을 위한 별도 기록이다.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions