smengcl opened a new pull request, #11624:
URL: https://github.com/apache/ozone/pull/11624

   Generated-by: Claude Code (Opus 5.5)
   
   ## What changes were proposed in this pull request?
   
   Addendum to #11563, following the review discussion there.
   
   #11563 kept Recon's candidate dir after a failed OM DB download and guarded 
it with a Recon only `untarContentsOfTarball` override that extracts through 
`.tmp` files, so the retry could skip files already received. The OM follower 
does not do this: `OzoneManager#installSnapshotFromLeader` deletes the 
candidate dir after a failed download. Recon gets the active DB as one tarball, 
so the exclude list only has entries on a retry after a failure, and that saves 
little (only files before the cut, which compaction may make stale, and a full 
disk stays full).
   
   This patch aligns Recon with the OM follower:
   
   - Clear the candidate dir in the failure path of 
`OzoneManagerServiceProviderImpl#getOzoneManagerDBSnapshot` via 
`RDBSnapshotProvider#init`, which also resets the pinned leader.
   - Remove the `untarContentsOfTarball` override from 
`ReconRDBSnapshotProvider` and make the base method `private` again.
   
   ## What is the link to the Apache JIRA
   
   https://issues.apache.org/jira/browse/HDDS-16880
   
   ## How was this patch tested?
   
   `testPartiallyUntarredFileNotReportedOnRetry` is renamed to 
`testCandidateDirClearedAfterFailedDownload` and now checks that, after a 
download whose tar ends in the middle of an SST file, the candidate dir is 
empty and the retry sends an empty exclude list.
   
   `TestOzoneManagerServiceProviderImpl`, `TestReconRDBSnapshotProvider`, 
`TestTriggerDBSyncEndpoint` and `TestRDBSnapshotProvider` pass (24 tests). 
Checkstyle is clean.
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


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

Reply via email to