You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ozone.apache.org by "Ethan Rose (Jira)" <ji...@apache.org> on 2026/03/31 13:48:00 UTC
[jira] [Resolved] (HDDS-14936) Container data checksum reverted by BackgroundContainerDataScanner after successful reconciliation
[ https://issues.apache.org/jira/browse/HDDS-14936?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ethan Rose resolved HDDS-14936.
-------------------------------
Resolution: Implemented
> Container data checksum reverted by BackgroundContainerDataScanner after successful reconciliation
> --------------------------------------------------------------------------------------------------
>
> Key: HDDS-14936
> URL: https://issues.apache.org/jira/browse/HDDS-14936
> Project: Apache Ozone
> Issue Type: Bug
> Components: Ozone Datanode
> Reporter: Yashaswini G A
> Priority: Major
>
> After corrupting all three Ratis replicas of a CLOSED container on different block files {{ozone admin container reconcile }} was run. Reconciliation completed on a datanode with peers, reporting corrupt chunks repaired and updated data checksum ( 76950a80 -> 914f24e4). Shortly afterward, BackgroundContainerDataScanner on the same datanode logged CORRUPT_CHUNK for a .block file, OzoneChecksumException on read, and updated the container data checksum again ( 914f24e4 -> 76950a80). Later scans again flipped the checksum. {{ozone admin container reconcile --status}} showed replicasMatch=false with one replica still on the older checksum.
> h2. Steps to reproduce
> # Close container; note per-replica dataChecksum (three-way mismatch after corruption).
> # Run {{{}ozone admin container reconcile <containerID>{}}}.
> # Observe DN logs: ReconcileContainerTask / KeyValueHandler reports successful reconcile and checksum update.
> # Within seconds/minutes, observe ContainerDataScanner logs on same DN: CORRUPT_CHUNK, checksum updated in opposite direction.
> # Optionally poll {{ozone admin container reconcile <id> --status}} and observe replicasMatch=false and lingering checksum divergence on one replica.
> h2. Expected behavior
> After a successful reconcile reporting corrupt chunks repaired and a stable data checksum aligned with peers, background data scan should not report the same chunk as corrupt and should not revert the container data checksum unless there is a documented second source of truth.
> h2. Actual behavior
> Reconcile reports DONE and checksum aligned to peers; BackgroundContainerDataScanner then reports CORRUPT_CHUNK and updates data checksum away from the post-reconcile value
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org