diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/CloneSnapshotProcedure.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/CloneSnapshotProcedure.java index 9477177..8071e8b 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/CloneSnapshotProcedure.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/CloneSnapshotProcedure.java @@ -367,7 +367,7 @@ public class CloneSnapshotProcedure snapshot); ProcedureSyncWait.getMasterQuotaManager(env) - .checkNamespaceTableAndRegionQuota(getTableName(), manifest.getRegionManifestsMap().size()); + .checkNamespaceTableAndRegionQuota(getTableName(),manifest.getNumberOfRegionsInManifests()); } final MasterCoprocessorHost cpHost = env.getMasterCoprocessorHost(); diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/RestoreSnapshotProcedure.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/RestoreSnapshotProcedure.java index 1dc8944..550a028 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/RestoreSnapshotProcedure.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/RestoreSnapshotProcedure.java @@ -360,7 +360,7 @@ public class RestoreSnapshotProcedure mfs.getFileSystem(), SnapshotDescriptionUtils.getCompletedSnapshotDir(snapshot, mfs.getRootDir()), snapshot); - int snapshotRegionCount = manifest.getRegionManifestsMap().size(); + int snapshotRegionCount = manifest.getNumberOfRegionsInManifests(); int tableRegionCount = ProcedureSyncWait.getMasterQuotaManager(env).getRegionCountOfTable(tableName); diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/snapshot/SnapshotManifest.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/snapshot/SnapshotManifest.java index 82460a2..0b6cff3 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/snapshot/SnapshotManifest.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/snapshot/SnapshotManifest.java @@ -419,6 +419,14 @@ public final class SnapshotManifest { return this.regionManifests; } + /* + * @return the number of regions in region manifests + */ + public int getNumberOfRegionsInManifests() { + if (regionManifests == null || regionManifests.size() == 0) return 0; + return regionManifests.size(); + } + /** * Get all the Region Manifest from the snapshot. * This is an helper to get a map with the region encoded name