You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by bu...@apache.org on 2018/08/22 16:31:33 UTC
[2/3] hbase git commit: Revert "HBASE-20194 Remove the explicit
timeout config for TestTruncateTableProcedure"
Revert "HBASE-20194 Remove the explicit timeout config for TestTruncateTableProcedure"
This reverts commit 74ea0111696e2a01a478fd7e11cfad14d1bfc3b5.
incorrect jira in commit
Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/899982c0
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/899982c0
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/899982c0
Branch: refs/heads/master
Commit: 899982c02d455dd02ca493d5473a047358728fb5
Parents: 2ab8ff5
Author: Sean Busbey <bu...@apache.org>
Authored: Wed Aug 22 11:27:42 2018 -0500
Committer: Sean Busbey <bu...@apache.org>
Committed: Wed Aug 22 11:30:05 2018 -0500
----------------------------------------------------------------------
.../procedure/TestTruncateTableProcedure.java | 37 ++++++++++----------
1 file changed, 19 insertions(+), 18 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hbase/blob/899982c0/hbase-server/src/test/java/org/apache/hadoop/hbase/master/procedure/TestTruncateTableProcedure.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/procedure/TestTruncateTableProcedure.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/procedure/TestTruncateTableProcedure.java
index 5b38b17..ea6ee0e 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/procedure/TestTruncateTableProcedure.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/procedure/TestTruncateTableProcedure.java
@@ -55,12 +55,12 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProcedureProtos;
-@Category({ MasterTests.class, MediumTests.class })
+@Category({MasterTests.class, MediumTests.class})
public class TestTruncateTableProcedure extends TestTableDDLProcedureBase {
@ClassRule
public static final HBaseClassTestRule CLASS_RULE =
- HBaseClassTestRule.forClass(TestTruncateTableProcedure.class);
+ HBaseClassTestRule.forClass(TestTruncateTableProcedure.class);
private static final Logger LOG = LoggerFactory.getLogger(TestTruncateTableProcedure.class);
@@ -316,7 +316,7 @@ public class TestTruncateTableProcedure extends TestTableDDLProcedureBase {
ProcedureTestingUtility.assertProcNotFailed(procExec, procId);
}
- @Test
+ @Test(timeout = 60000)
public void testTruncateWithPreserveAfterSplit() throws Exception {
String[] families = new String[] { "f1", "f2" };
byte[][] splitKeys =
@@ -324,10 +324,10 @@ public class TestTruncateTableProcedure extends TestTableDDLProcedureBase {
TableName tableName = TableName.valueOf(name.getMethodName());
RegionInfo[] regions = MasterProcedureTestingUtility.createTable(getMasterProcedureExecutor(),
tableName, splitKeys, families);
- splitAndTruncate(tableName, regions, 1);
+ splitAndTruncate(tableName, regions);
}
- @Test
+ @Test(timeout = 60000)
public void testTruncatePreserveWithReplicaRegionAfterSplit() throws Exception {
String[] families = new String[] { "f1", "f2" };
byte[][] splitKeys =
@@ -335,10 +335,12 @@ public class TestTruncateTableProcedure extends TestTableDDLProcedureBase {
TableName tableName = TableName.valueOf(name.getMethodName());
// create a table with region replications
- TableDescriptor htd = TableDescriptorBuilder.newBuilder(tableName).setRegionReplication(3)
- .setColumnFamilies(Arrays.stream(families)
- .map(fam -> ColumnFamilyDescriptorBuilder.newBuilder(Bytes.toBytes(fam)).build())
- .collect(Collectors.toList()))
+ TableDescriptor htd = TableDescriptorBuilder.newBuilder(tableName)
+ .setRegionReplication(3)
+ .setColumnFamilies(
+ Arrays.stream(families)
+ .map(fam -> ColumnFamilyDescriptorBuilder.newBuilder(Bytes.toBytes(fam)).build())
+ .collect(Collectors.toList()))
.build();
RegionInfo[] regions = ModifyRegionUtils.createRegionInfos(htd, splitKeys);
ProcedureExecutor<MasterProcedureEnv> procExec = getMasterProcedureExecutor();
@@ -346,18 +348,20 @@ public class TestTruncateTableProcedure extends TestTableDDLProcedureBase {
new CreateTableProcedure(procExec.getEnvironment(), htd, regions));
ProcedureTestingUtility.assertProcNotFailed(procExec.getResult(procId));
- splitAndTruncate(tableName, regions, 3);
+ splitAndTruncate(tableName, regions);
}
- private void splitAndTruncate(TableName tableName, RegionInfo[] regions, int regionReplication)
- throws IOException, InterruptedException {
+ private void splitAndTruncate(TableName tableName, RegionInfo[] regions) throws IOException,
+ InterruptedException {
+
// split a region
- UTIL.getAdmin().split(tableName, new byte[] { '0' });
+ UTIL.getAdmin().split(tableName, new byte[]{'0'});
UTIL.waitUntilAllRegionsAssigned(tableName);
// wait until split really happens
- UTIL.waitFor(60000,
- () -> UTIL.getAdmin().getRegions(tableName).size() > regions.length * regionReplication);
+ while (UTIL.getAdmin().getRegions(tableName).size() <= regions.length) {
+ Thread.sleep(50);
+ }
// disable the table
UTIL.getAdmin().disableTable(tableName);
@@ -369,8 +373,5 @@ public class TestTruncateTableProcedure extends TestTableDDLProcedureBase {
ProcedureTestingUtility.assertProcNotFailed(procExec, procId);
UTIL.waitUntilAllRegionsAssigned(tableName);
- // confirm that we have the correct number of regions
- assertEquals((regions.length + 1) * regionReplication,
- UTIL.getAdmin().getRegions(tableName).size());
}
}