This is an automated email from the ASF dual-hosted git repository.
reidchan pushed a commit to branch branch-1
in repository https://gitbox.apache.org/repos/asf/hbase.git
The following commit(s) were added to refs/heads/branch-1 by this push:
new f240ca0 HBASE-22872 Don't try to create normalization plan
unnecesarily when split and merge both are disabled
f240ca0 is described below
commit f240ca0e637bbbd8c7854703b57d8ceb95b49166
Author: Aman Poonia <[email protected]>
AuthorDate: Sat Aug 17 15:17:42 2019 +0530
HBASE-22872 Don't try to create normalization plan unnecesarily when split
and merge both are disabled
Signed-off-by: Reid Chan <[email protected]>
---
.../master/normalizer/SimpleRegionNormalizer.java | 30 ++++++++++++----------
1 file changed, 17 insertions(+), 13 deletions(-)
diff --git
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/normalizer/SimpleRegionNormalizer.java
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/normalizer/SimpleRegionNormalizer.java
index c18a49a..b346c14 100644
---
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/normalizer/SimpleRegionNormalizer.java
+++
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/normalizer/SimpleRegionNormalizer.java
@@ -107,6 +107,23 @@ public class SimpleRegionNormalizer implements
RegionNormalizer {
LOG.debug("Normalization of system table " + table + " isn't allowed");
return null;
}
+ boolean splitEnabled = true, mergeEnabled = true;
+ try {
+ splitEnabled = masterRpcServices.isSplitOrMergeEnabled(null,
+
RequestConverter.buildIsSplitOrMergeEnabledRequest(MasterSwitchType.SPLIT)).getEnabled();
+ } catch (ServiceException se) {
+ LOG.debug("Unable to determine whether split is enabled", se);
+ }
+ try {
+ mergeEnabled = masterRpcServices.isSplitOrMergeEnabled(null,
+
RequestConverter.buildIsSplitOrMergeEnabledRequest(MasterSwitchType.MERGE)).getEnabled();
+ } catch (ServiceException se) {
+ LOG.debug("Unable to determine whether split is enabled", se);
+ }
+ if (!splitEnabled && !mergeEnabled) {
+ LOG.debug("Both split and merge are disabled for table: " + table);
+ return null;
+ }
List<NormalizationPlan> plans = new ArrayList<NormalizationPlan>();
List<HRegionInfo> tableRegions =
masterServices.getAssignmentManager().getRegionStates().
@@ -141,19 +158,6 @@ public class SimpleRegionNormalizer implements
RegionNormalizer {
LOG.debug("Table " + table + ", average region size: " + avgRegionSize);
int candidateIdx = 0;
- boolean splitEnabled = true, mergeEnabled = true;
- try {
- splitEnabled = masterRpcServices.isSplitOrMergeEnabled(null,
-
RequestConverter.buildIsSplitOrMergeEnabledRequest(MasterSwitchType.SPLIT)).getEnabled();
- } catch (ServiceException se) {
- LOG.debug("Unable to determine whether split is enabled", se);
- }
- try {
- mergeEnabled = masterRpcServices.isSplitOrMergeEnabled(null,
-
RequestConverter.buildIsSplitOrMergeEnabledRequest(MasterSwitchType.MERGE)).getEnabled();
- } catch (ServiceException se) {
- LOG.debug("Unable to determine whether split is enabled", se);
- }
while (candidateIdx < tableRegions.size()) {
HRegionInfo hri = tableRegions.get(candidateIdx);
long regionSize = getRegionSize(hri);