Ritesh Shukla created HDDS-16012:
------------------------------------

             Summary: SCM should flag closed-container replicas reporting equal 
BCSID with mismatched data checksums
                 Key: HDDS-16012
                 URL: https://issues.apache.org/jira/browse/HDDS-16012
             Project: Apache Ozone
          Issue Type: Improvement
          Components: SCM
            Reporter: Ritesh Shukla


h3. Problem

Two replicas of a CLOSED container claiming the same BCSID assert the same 
committed content, so their container data checksums must match once both have 
reported trees. SCM already receives both {{sequenceId}} and {{dataChecksum}} 
in container replica reports, but nothing consumes {{dataChecksum}} in the 
replication path today. The BCSID-inflation bug class (HDDS-15542, HDDS-12986) 
produces exactly this signature -- equal sequenceId, different content -- and 
is invisible to datanode scanners because the inflated replica is internally 
consistent; only a cross-replica comparison can detect it.

h3. Proposal

A cheap comparison in SCM (or Recon) over data already reported:
* For CLOSED containers where all replicas have reported non-empty data 
checksums: if any two replicas report equal {{sequenceId}} but different 
{{dataChecksum}}, emit a metric and a rate-limited WARN, and surface it in 
{{ozone admin container info}}.
* No automated corrective action, consistent with the reconciliation design's 
System Safety principle; operators can run {{ozone admin container reconcile}}.

h3. Constraints

* Only compare when both replicas have reported checksums; suppress during 
known transient windows (tree not yet generated post-close/scan, 
mid-reconciliation) and debounce.
* Persistent mismatch with equal BCSIDs after reconciliation indicates either 
BCSID inflation (a bug) or unrecoverable divergence -- both operator-worthy.
* Equal checksums with unequal BCSIDs is NOT an anomaly (under-claiming is the 
safe direction); do not flag it.

h3. References

HDDS-10239, HDDS-15542, HDDS-12986, and the BCSID heuristics umbrella 
(HDDS-16011).

Generated-by: Claude Code (Claude Fable 5)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to