Skip to content

HDDS-15308. Improve ICR/FCR-driven container state recovery using SCM authoritative state.#10326

Draft
devmadhuu wants to merge 2 commits into
apache:masterfrom
devmadhuu:HDDS-15308
Draft

HDDS-15308. Improve ICR/FCR-driven container state recovery using SCM authoritative state.#10326
devmadhuu wants to merge 2 commits into
apache:masterfrom
devmadhuu:HDDS-15308

Conversation

@devmadhuu
Copy link
Copy Markdown
Contributor

What changes were proposed in this pull request?

This PR improves Recon’s DN report handling for existing containers whose local lifecycle state has become stale.

Previously, Recon only used ICR/FCR replica reports to move an existing container from OPEN to CLOSING. If Recon already had a container in stale CLOSING or DELETED, it could remain stale until a later targeted SCM sync.

This change adds SCM-authoritative recovery for those cases:

  • keeps OPEN -> CLOSING gated by healthy non-OPEN replica reports
  • preserves pipelineToOpenContainer accounting when moving OPEN -> CLOSING
  • treats DN reports for CLOSING containers as a wake-up signal, then queries SCM and advances Recon to SCM’s authoritative state:
    • QUASI_CLOSED
    • CLOSED
    • DELETING
    • DELETED
  • recovers Recon DELETED containers when:
    • DN reports a live terminal replica state, CLOSED or QUASI_CLOSED
    • SCM still reports the container as CLOSED or QUASI_CLOSED

What is the link to the Apache JIRA

https://issues.apache.org/jira/browse/HDDS-15308

How was this patch tested?

Added junit tests in TestReconContainerManager class.

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