gvprathyusha6 commented on code in PR #5939:
URL: https://github.com/apache/hbase/pull/5939#discussion_r1775395237


##########
hbase-server/src/main/java/org/apache/hadoop/hbase/master/janitor/CatalogJanitor.java:
##########
@@ -422,7 +426,16 @@ private static Pair<Boolean, Boolean> 
checkRegionReferences(MasterServices servi
     try {
       HRegionFileSystem regionFs = HRegionFileSystem
         .openRegionFromFileSystem(services.getConfiguration(), fs, tabledir, 
region, true);
-      boolean references = regionFs.hasReferences(tableDescriptor);
+      ColumnFamilyDescriptor[] families = tableDescriptor.getColumnFamilies();
+      boolean references = false;
+      for (ColumnFamilyDescriptor cfd : families) {
+        StoreFileTracker sft = 
StoreFileTrackerFactory.create(services.getConfiguration(),
+          tableDescriptor, 
ColumnFamilyDescriptorBuilder.of(cfd.getNameAsString()), regionFs);
+        references = references || sft.hasReferences();
+        if (references) {
+          break;
+        }
+      }

Review Comment:
   >At this point, any other existing FileBasedStoreFileTracker instance for 
this same store should reload the store files, otherwise the store files map on 
those instances would be outdated. 
   
   load of SFT every time does a 
[backedfile.load()](https://github.com/apache/hbase/blob/master/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/storefiletracker/FileBasedStoreFileTracker.java#L71)
 again right, at that time it should know the latest manifest and load that 
one, it does not return the storefiles it cached know



-- 
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: issues-unsubscr...@hbase.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to