Skip to content

HDDS-16320. Recon incorrectly marks healthy EC containers as REPLICA_MISMATCH by comparing checksums across different EC replica indexes. - #11215

Merged
devmadhuu merged 1 commit into
apache:masterfrom
devmadhuu:HDDS-16320
Sep 9, 2026

Conversation

@devmadhuu

Copy link
Copy Markdown
Contributor

What changes were proposed in this pull request?

Recon reports healthy EC containers as REPLICA_MISMATCH because it compares checksums across different replica indexes, which contain different data or parity fragments.

This change compares EC checksums only between replicas with the same index, while preserving the existing comparison for non-EC containers. It uses the replicas available during each Recon health scan.

What is the link to the Apache JIRA

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

How was this patch tested?

  • Added regression coverage for healthy EC fragments, matching and conflicting duplicates of data/parity indexes, mismatch resolution, and RATIS behavior.
  • Confirmed the EC regression cases fail before the fix.
  • All 12 tests in TestReconReplicationManager pass.

…MISMATCH by comparing checksums across different EC replica indexes. - Initial Commit.
@devmadhuu
devmadhuu marked this pull request as ready for review September 7, 2026 15:47

@priyeshkaratha priyeshkaratha left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @devmadhuu for working on this. Changes LGTM +1

@dombizita dombizita left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for reporting and fixing it @devmadhuu!! Looks good to me!

@devmadhuu

Copy link
Copy Markdown
Contributor Author

Thanks @priyeshkaratha @dombizita for review.

@devmadhuu
devmadhuu merged commit 1b9cbd1 into apache:master Sep 9, 2026
98 of 99 checks passed
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.

3 participants