swamirishi opened a new pull request, #8053: URL: https://github.com/apache/ozone/pull/8053
## What changes were proposed in this pull request? Currently all garbage collection threads peek into previous snapshots to check whether a particular deleted key/deleted Directory/ RenameEntry can be removed from the system. All of these operations happen without taking locks because of which all of these threads could be working on an inconsistent snapshot data. This patch implements a general utility class which would be responsible for opening last N snapshots from the snapshot chain corresponding to the keys bucket where N is going to be defined by the garbage collection thread based on whether if it is reclaiming a deletedKey/deletedDirectory/RenameEntry after taking a read lock on all of these snapshots. If there are lesser than N previous snapshot in the chain, only the existing snapshots would be considered and rest of them would be just marked as null. This utility class should fail opening the snapshot if any of these snaphshots are not active, since a deleted snapshot could be in an inconsistent state. ## What is the link to the Apache JIRA https://issues.apache.org/jira/browse/HDDS-12560 ## How was this patch tested? Adding unit tests -- 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]
