You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by st...@apache.org on 2020/02/20 05:15:31 UTC
[hbase] branch branch-2.1 updated: Revert "HBASE-23864 No need to
submit SplitTableRegionProcedure/MergeTableRegionsProcedure when
split/merge is disabled (#1182)" Causes TestSplitOrMergeStatus to fail.
Reverting.
This is an automated email from the ASF dual-hosted git repository.
stack pushed a commit to branch branch-2.1
in repository https://gitbox.apache.org/repos/asf/hbase.git
The following commit(s) were added to refs/heads/branch-2.1 by this push:
new 077f15d Revert "HBASE-23864 No need to submit SplitTableRegionProcedure/MergeTableRegionsProcedure when split/merge is disabled (#1182)" Causes TestSplitOrMergeStatus to fail. Reverting.
077f15d is described below
commit 077f15d40b51ca17c6e55210cde1a84776f6982b
Author: stack <st...@apache.org>
AuthorDate: Wed Feb 19 21:14:56 2020 -0800
Revert "HBASE-23864 No need to submit SplitTableRegionProcedure/MergeTableRegionsProcedure when split/merge is disabled (#1182)"
Causes TestSplitOrMergeStatus to fail. Reverting.
This reverts commit c8cf9f608cde85014ab4a25258777aebaf670b75.
---
.../main/java/org/apache/hadoop/hbase/master/HMaster.java | 13 -------------
.../hadoop/hbase/master/assignment/AssignmentManager.java | 14 --------------
.../master/assignment/MergeTableRegionsProcedure.java | 6 +-----
.../hbase/master/assignment/SplitTableRegionProcedure.java | 7 ++-----
4 files changed, 3 insertions(+), 37 deletions(-)
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java
index df96309..a61750c 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java
@@ -1819,12 +1819,6 @@ public class HMaster extends HRegionServer implements MasterServices {
final long nonce) throws IOException {
checkInitialized();
- if (!isSplitOrMergeEnabled(MasterSwitchType.MERGE)) {
- String regionsStr = Arrays.deepToString(regionsToMerge);
- LOG.warn("Merge switch is off! skip merge of " + regionsStr);
- throw new IOException("Merge of " + regionsStr + " failed because merge switch is off");
- }
-
final String mergeRegionsStr = Arrays.stream(regionsToMerge).
map(r -> RegionInfo.getShortNameToLog(r)).collect(Collectors.joining(", "));
return MasterProcedureUtil.submitProcedure(new NonceProcedureRunnable(this, ng, nonce) {
@@ -1850,13 +1844,6 @@ public class HMaster extends HRegionServer implements MasterServices {
final long nonceGroup, final long nonce)
throws IOException {
checkInitialized();
-
- if (!isSplitOrMergeEnabled(MasterSwitchType.SPLIT)) {
- LOG.warn("Split switch is off! skip split of " + regionInfo);
- throw new IOException("Split region " + regionInfo.getRegionNameAsString() +
- " failed due to split switch off");
- }
-
return MasterProcedureUtil.submitProcedure(
new MasterProcedureUtil.NonceProcedureRunnable(this, nonceGroup, nonce) {
@Override
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java
index 42f1b0e..f47d625 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java
@@ -34,7 +34,6 @@ import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.locks.Condition;
import java.util.concurrent.locks.ReentrantLock;
import java.util.stream.Collectors;
-
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HBaseIOException;
import org.apache.hadoop.hbase.HConstants;
@@ -42,7 +41,6 @@ import org.apache.hadoop.hbase.PleaseHoldException;
import org.apache.hadoop.hbase.ServerName;
import org.apache.hadoop.hbase.TableName;
import org.apache.hadoop.hbase.YouAreDeadException;
-import org.apache.hadoop.hbase.client.MasterSwitchType;
import org.apache.hadoop.hbase.client.RegionInfo;
import org.apache.hadoop.hbase.client.RegionInfoBuilder;
import org.apache.hadoop.hbase.client.RegionStatesCount;
@@ -899,12 +897,6 @@ public class AssignmentManager implements ServerListener {
" hriA=" + hriA + " hriB=" + hriB);
}
- if (!master.isSplitOrMergeEnabled(MasterSwitchType.SPLIT)) {
- LOG.warn("Split switch is off! skip split of " + parent);
- throw new IOException("Split region " + parent.getRegionNameAsString() +
- " failed due to split switch off");
- }
-
// Submit the Split procedure
final byte[] splitKey = hriB.getStartKey();
if (LOG.isDebugEnabled()) {
@@ -930,12 +922,6 @@ public class AssignmentManager implements ServerListener {
" maybe an old RS (< 2.0) had the operation in progress");
}
- if (!master.isSplitOrMergeEnabled(MasterSwitchType.MERGE)) {
- LOG.warn("Merge switch is off! skip merge of regionA=" + hriA + " regionB=" + hriB);
- throw new IOException("Merge of regionA=" + hriA + " regionB=" + hriB +
- " failed because merge switch is off");
- }
-
// Submit the Merge procedure
if (LOG.isDebugEnabled()) {
LOG.debug("Handling merge request from RS=" + merged + ", merged=" + merged);
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.java
index 1b46eff..22442fd 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.java
@@ -472,10 +472,6 @@ public class MergeTableRegionsProcedure
throw new MergeRegionException("Skip merging regions " +
RegionInfo.getShortNameToLog(regionsToMerge) + ", because we are snapshotting " + tn);
}
-
- // Mostly this check is not used because we already check the switch before submit a merge
- // procedure. Just for safe, check the switch again. This procedure can be rollbacked if
- // the switch was set to false after submit.
if (!env.getMasterServices().isSplitOrMergeEnabled(MasterSwitchType.MERGE)) {
String regionsStr = Arrays.deepToString(this.regionsToMerge);
LOG.warn("Merge switch is off! skip merge of " + regionsStr);
@@ -835,4 +831,4 @@ public class MergeTableRegionsProcedure
// range of steps; what do we do for these should an operator want to cancel them? HBASE-20022.
return isRollbackSupported(getCurrentState()) && super.abort(env);
}
-}
+}
\ No newline at end of file
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/SplitTableRegionProcedure.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/SplitTableRegionProcedure.java
index 01c2186..2856ab0 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/SplitTableRegionProcedure.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/SplitTableRegionProcedure.java
@@ -501,9 +501,8 @@ public class SplitTableRegionProcedure
return false;
}
- // Mostly this check is not used because we already check the switch before submit a split
- // procedure. Just for safe, check the switch again. This procedure can be rollbacked if
- // the switch was set to false after submit.
+ // Since we have the lock and the master is coordinating the operation
+ // we are always able to split the region
if (!env.getMasterServices().isSplitOrMergeEnabled(MasterSwitchType.SPLIT)) {
LOG.warn("pid=" + getProcId() + " split switch is off! skip split of " + parentHRI);
setFailure(new IOException("Split region " + parentHRI.getRegionNameAsString() +
@@ -532,8 +531,6 @@ public class SplitTableRegionProcedure
// set node state as SPLITTING
node.setState(State.SPLITTING);
- // Since we have the lock and the master is coordinating the operation
- // we are always able to split the region
return true;
}