Siyao Meng created HDDS-17080:
---------------------------------
Summary: Continue snapshot orphan version check when one snapshot
fails
Key: HDDS-17080
URL: https://issues.apache.org/jira/browse/HDDS-17080
Project: Apache Ozone
Issue Type: Sub-task
Components: Ozone Manager, Snapshot
Reporter: Siyao Meng
Assignee: Siyao Meng
{{OmSnapshotLocalDataManager#checkOrphanSnapshotVersions}} loops over every
snapshot queued for the orphan version check and fully loads each snapshot's
local data YAML. Nothing catches errors per snapshot, so an {{IOException}} for
one snapshot (for example a YAML that became unreadable after OM startup) ends
the whole run. The scheduler wrapper only logs "Exception while checking orphan
snapshot versions".
Since the failing snapshot stays in the queue, every later run stops at the
same place. Orphan versions of the snapshots after it are never cleaned up.
Fix: catch {{IOException}} per snapshot, log it with the snapshot id, keep that
snapshot queued for the next run, and continue with the rest.
Related: HDDS-17079 lets YAMLs with a bad SST section into the version graph at
startup, which makes this case easier to hit.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]