hgromer commented on PR #7084: URL: https://github.com/apache/hbase/pull/7084#issuecomment-2972847153
> > This is certainly a cleaner implementation, though it means we can interleave other table procedures after cycles of the SnapshotProcedure. > > FWIW, if a SnapshotProcedure starts, no other table procedures which need a exclusive lock can be executed... > > And what I mean is that, we can reuse the mechanism introduced in [HBASE-28683](https://issues.apache.org/jira/browse/HBASE-28683) to simply fix the problem. > > Just change the code here > > https://github.com/apache/hbase/blob/64c582fe9a846b2f5e07b180cc6fae77431d726e/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/TableQueue.java#L62 > > Make Snapshot also return true, and change SnapshotProcedure's acquireLock method to also require exclusive lock, change holdLock to return false, then we are safe. > > Thanks. Ah okay, I understand. This does prevent us from being able to take multiple snapshots of the table, as mentioned in [this](https://github.com/apache/hbase/blob/64c582fe9a846b2f5e07b180cc6fae77431d726e/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/SnapshotProcedure.java#L111C37-L111C45) comment but that seems ok -- 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]
