You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by mb...@apache.org on 2015/03/10 18:32:38 UTC

[2/2] hbase git commit: HBASE-13181 TestHRegionReplayEvents.testReplayBulkLoadEvent fails frequently

HBASE-13181 TestHRegionReplayEvents.testReplayBulkLoadEvent fails frequently


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/c4369d9a
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/c4369d9a
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/c4369d9a

Branch: refs/heads/branch-1
Commit: c4369d9a902beb79eb3bfca3e0d96560003b4dc6
Parents: 78d6a34
Author: Matteo Bertozzi <ma...@cloudera.com>
Authored: Tue Mar 10 17:21:34 2015 +0000
Committer: Matteo Bertozzi <ma...@cloudera.com>
Committed: Tue Mar 10 17:22:07 2015 +0000

----------------------------------------------------------------------
 .../hadoop/hbase/regionserver/TestBulkLoad.java | 35 ++++++++++++--------
 .../regionserver/TestHRegionReplayEvents.java   | 23 ++++++++-----
 2 files changed, 36 insertions(+), 22 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase/blob/c4369d9a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestBulkLoad.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestBulkLoad.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestBulkLoad.java
index 931306c..5629050 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestBulkLoad.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestBulkLoad.java
@@ -90,7 +90,7 @@ public class TestBulkLoad {
   private final Expectations callOnce;
   @Rule
   public TestName name = new TestName();
-  
+
   public TestBulkLoad() throws IOException {
     callOnce = new Expectations() {
       {
@@ -233,17 +233,24 @@ public class TestBulkLoad {
     HFile.WriterFactory hFileFactory = HFile.getWriterFactoryNoCache(conf);
     // TODO We need a way to do this without creating files
     File hFileLocation = testFolder.newFile();
-    hFileFactory.withOutputStream(new FSDataOutputStream(new FileOutputStream(hFileLocation)));
-    hFileFactory.withFileContext(new HFileContext());
-    HFile.Writer writer = hFileFactory.create();
-
-    writer.append(new KeyValue(CellUtil.createCell(randomBytes,
-        family,
-        randomBytes,
-        0l,
-        KeyValue.Type.Put.getCode(),
-        randomBytes)));
-    writer.close();
+    FSDataOutputStream out = new FSDataOutputStream(new FileOutputStream(hFileLocation));
+    try {
+      hFileFactory.withOutputStream(out);
+      hFileFactory.withFileContext(new HFileContext());
+      HFile.Writer writer = hFileFactory.create();
+      try {
+        writer.append(new KeyValue(CellUtil.createCell(randomBytes,
+            family,
+            randomBytes,
+            0l,
+            KeyValue.Type.Put.getCode(),
+            randomBytes)));
+      } finally {
+        writer.close();
+      }
+    } finally {
+      out.close();
+    }
     return hFileLocation.getAbsoluteFile().getAbsolutePath();
   }
 
@@ -286,7 +293,7 @@ public class TestBulkLoad {
       assertNotNull(desc);
 
       if (tableName != null) {
-        assertTrue(Bytes.equals(ProtobufUtil.toTableName(desc.getTableName()).getName(), 
+        assertTrue(Bytes.equals(ProtobufUtil.toTableName(desc.getTableName()).getName(),
           tableName));
       }
 
@@ -297,7 +304,7 @@ public class TestBulkLoad {
         assertTrue(Bytes.equals(Bytes.toBytes(store.getStoreHomeDir()), familyName));
         assertEquals(storeFileNames.size(), store.getStoreFileCount());
       }
-      
+
       return true;
     }
 

http://git-wip-us.apache.org/repos/asf/hbase/blob/c4369d9a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegionReplayEvents.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegionReplayEvents.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegionReplayEvents.java
index 35ed253..0fab8a3 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegionReplayEvents.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegionReplayEvents.java
@@ -1452,7 +1452,7 @@ public class TestHRegionReplayEvents {
     // close the region and open again.
     primaryRegion.close();
     primaryRegion = HRegion.openHRegion(rootDir, primaryHri, htd, walPrimary, CONF, rss, null);
-    
+
     // bulk load a file into primary region
     Random random = new Random();
     byte[] randomValues = new byte[20];
@@ -1515,13 +1515,20 @@ public class TestHRegionReplayEvents {
     HFile.WriterFactory hFileFactory = HFile.getWriterFactoryNoCache(TEST_UTIL.getConfiguration());
     // TODO We need a way to do this without creating files
     Path testFile = new Path(testPath, UUID.randomUUID().toString());
-    hFileFactory.withOutputStream(TEST_UTIL.getTestFileSystem().create(testFile));
-    hFileFactory.withFileContext(new HFileContext());
-    HFile.Writer writer = hFileFactory.create();
-
-    writer.append(new KeyValue(CellUtil.createCell(valueBytes, family, valueBytes, 0l,
-      KeyValue.Type.Put.getCode(), valueBytes)));
-    writer.close();
+    FSDataOutputStream out = TEST_UTIL.getTestFileSystem().create(testFile);
+    try {
+      hFileFactory.withOutputStream(out);
+      hFileFactory.withFileContext(new HFileContext());
+      HFile.Writer writer = hFileFactory.create();
+      try {
+        writer.append(new KeyValue(CellUtil.createCell(valueBytes, family, valueBytes, 0l,
+          KeyValue.Type.Put.getCode(), valueBytes)));
+      } finally {
+        writer.close();
+      }
+    } finally {
+      out.close();
+    }
     return testFile.toString();
   }