You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by ap...@apache.org on 2014/10/30 19:13:45 UTC
[3/3] git commit: HBASE-12384 TestTags can hang on fast test hosts
HBASE-12384 TestTags can hang on fast test hosts
Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/415b8ff4
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/415b8ff4
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/415b8ff4
Branch: refs/heads/0.98
Commit: 415b8ff438b9bdc5c2e1b15a9b6de81bb472fe24
Parents: 5874ae0
Author: Andrew Purtell <ap...@apache.org>
Authored: Thu Oct 30 10:45:02 2014 -0700
Committer: Andrew Purtell <ap...@apache.org>
Committed: Thu Oct 30 10:51:55 2014 -0700
----------------------------------------------------------------------
.../hadoop/hbase/regionserver/TestTags.java | 93 ++++++--------------
1 file changed, 28 insertions(+), 65 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hbase/blob/415b8ff4/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestTags.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestTags.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestTags.java
index 3de6ed3..f218a43 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestTags.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestTags.java
@@ -123,13 +123,12 @@ public class TestTags {
put.setAttribute("visibility", Bytes.toBytes("myTag"));
table.put(put);
admin.flush(tableName.getName());
- List<HRegion> regions = TEST_UTIL.getHBaseCluster().getRegions(tableName.getName());
- for (HRegion region : regions) {
- Store store = region.getStore(fam);
- while (!(store.getStorefilesCount() > 0)) {
- Thread.sleep(10);
- }
- }
+ // We are lacking an API for confirming flush request compaction.
+ // Just sleep for a short time. We won't be able to confirm flush
+ // completion but the test won't hang now or in the future if
+ // default compaction policy causes compaction between flush and
+ // when we go to confirm it.
+ Thread.sleep(1000);
Put put1 = new Put(row1);
byte[] value1 = Bytes.toBytes("1000dfsdf");
@@ -137,28 +136,16 @@ public class TestTags {
// put1.setAttribute("visibility", Bytes.toBytes("myTag3"));
table.put(put1);
admin.flush(tableName.getName());
- regions = TEST_UTIL.getHBaseCluster().getRegions(tableName.getName());
- for (HRegion region : regions) {
- Store store = region.getStore(fam);
- while (!(store.getStorefilesCount() > 1)) {
- Thread.sleep(10);
- }
- }
+ Thread.sleep(1000);
Put put2 = new Put(row2);
byte[] value2 = Bytes.toBytes("1000dfsdf");
put2.add(fam, qual, HConstants.LATEST_TIMESTAMP, value2);
put2.setAttribute("visibility", Bytes.toBytes("myTag3"));
table.put(put2);
-
admin.flush(tableName.getName());
- regions = TEST_UTIL.getHBaseCluster().getRegions(tableName.getName());
- for (HRegion region : regions) {
- Store store = region.getStore(fam);
- while (!(store.getStorefilesCount() > 2)) {
- Thread.sleep(10);
- }
- }
+ Thread.sleep(1000);
+
result(fam, row, qual, row2, table, value, value2, row1, value1);
admin.compact(tableName.getName());
while (admin.getCompactionState(tableName.getName()) != CompactionState.NONE) {
@@ -201,40 +188,27 @@ public class TestTags {
put.add(fam, qual, HConstants.LATEST_TIMESTAMP, value);
table.put(put);
admin.flush(tableName.getName());
- List<HRegion> regions = TEST_UTIL.getHBaseCluster().getRegions(tableName.getName());
- for (HRegion region : regions) {
- Store store = region.getStore(fam);
- while (!(store.getStorefilesCount() > 0)) {
- Thread.sleep(10);
- }
- }
+ // We are lacking an API for confirming flush request compaction.
+ // Just sleep for a short time. We won't be able to confirm flush
+ // completion but the test won't hang now or in the future if
+ // default compaction policy causes compaction between flush and
+ // when we go to confirm it.
+ Thread.sleep(1000);
Put put1 = new Put(row1);
byte[] value1 = Bytes.toBytes("1000dfsdf");
put1.add(fam, qual, HConstants.LATEST_TIMESTAMP, value1);
table.put(put1);
admin.flush(tableName.getName());
- regions = TEST_UTIL.getHBaseCluster().getRegions(tableName.getName());
- for (HRegion region : regions) {
- Store store = region.getStore(fam);
- while (!(store.getStorefilesCount() > 1)) {
- Thread.sleep(10);
- }
- }
+ Thread.sleep(1000);
Put put2 = new Put(row2);
byte[] value2 = Bytes.toBytes("1000dfsdf");
put2.add(fam, qual, HConstants.LATEST_TIMESTAMP, value2);
table.put(put2);
-
admin.flush(tableName.getName());
- regions = TEST_UTIL.getHBaseCluster().getRegions(tableName.getName());
- for (HRegion region : regions) {
- Store store = region.getStore(fam);
- while (!(store.getStorefilesCount() > 2)) {
- Thread.sleep(10);
- }
- }
+ Thread.sleep(1000);
+
Scan s = new Scan(row);
ResultScanner scanner = table.getScanner(s);
try {
@@ -312,26 +286,20 @@ public class TestTags {
put1.add(fam, qual, HConstants.LATEST_TIMESTAMP, value1);
table.put(put1);
admin.flush(tableName.getName());
- List<HRegion> regions = TEST_UTIL.getHBaseCluster().getRegions(tableName.getName());
- for (HRegion region : regions) {
- Store store = region.getStore(fam);
- while (!(store.getStorefilesCount() > 0)) {
- Thread.sleep(10);
- }
- }
+ // We are lacking an API for confirming flush request compaction.
+ // Just sleep for a short time. We won't be able to confirm flush
+ // completion but the test won't hang now or in the future if
+ // default compaction policy causes compaction between flush and
+ // when we go to confirm it.
+ Thread.sleep(1000);
put1 = new Put(row2);
value1 = Bytes.toBytes("1000dfsdf");
put1.add(fam, qual, HConstants.LATEST_TIMESTAMP, value1);
table.put(put1);
admin.flush(tableName.getName());
- regions = TEST_UTIL.getHBaseCluster().getRegions(tableName.getName());
- for (HRegion region : regions) {
- Store store = region.getStore(fam);
- while (!(store.getStorefilesCount() > 1)) {
- Thread.sleep(10);
- }
- }
+ Thread.sleep(1000);
+
Put put2 = new Put(rowd);
byte[] value2 = Bytes.toBytes("1000dfsdf");
put2.add(fam, qual, HConstants.LATEST_TIMESTAMP, value2);
@@ -342,13 +310,8 @@ public class TestTags {
put.setAttribute("visibility", Bytes.toBytes("ram"));
table.put(put2);
admin.flush(tableName.getName());
- regions = TEST_UTIL.getHBaseCluster().getRegions(tableName.getName());
- for (HRegion region : regions) {
- Store store = region.getStore(fam);
- while (!(store.getStorefilesCount() > 2)) {
- Thread.sleep(10);
- }
- }
+ Thread.sleep(1000);
+
TestCoprocessorForTags.checkTagPresence = true;
Scan s = new Scan(row);
s.setCaching(1);