hbase-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bus...@apache.org
Subject [3/4] hbase git commit: HBASE-17995 improve log messages during snapshot tests.
Date Fri, 30 Jun 2017 14:58:00 GMT
HBASE-17995 improve log messages during snapshot tests.

Signed-off-by: Michael Stack <stack@apache.org>


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

Branch: refs/heads/branch-2
Commit: 8005d329437e38e89ad315cccc112a821555eeaa
Parents: d00850f
Author: Sean Busbey <busbey@apache.org>
Authored: Thu May 4 11:17:51 2017 -0500
Committer: Sean Busbey <busbey@apache.org>
Committed: Fri Jun 30 09:52:24 2017 -0500

----------------------------------------------------------------------
 .../mapreduce/TableSnapshotInputFormatTestBase.java | 12 +++++++++---
 .../mapreduce/TestTableSnapshotInputFormat.java     |  8 +++++++-
 .../hadoop/hbase/snapshot/SnapshotTestingUtils.java | 16 ++++++++++------
 3 files changed, 26 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase/blob/8005d329/hbase-server/src/test/java/org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatTestBase.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatTestBase.java
b/hbase-server/src/test/java/org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatTestBase.java
index ed4175b..fa47253 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatTestBase.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/mapreduce/TableSnapshotInputFormatTestBase.java
@@ -18,6 +18,8 @@
 
 package org.apache.hadoop.hbase.mapreduce;
 
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileStatus;
 import org.apache.hadoop.fs.FileSystem;
@@ -49,6 +51,7 @@ import java.io.IOException;
 import java.util.Arrays;
 
 public abstract class TableSnapshotInputFormatTestBase {
+  private static final Log LOG = LogFactory.getLog(TableSnapshotInputFormatTestBase.class);
   @Rule public final TestRule timeout = CategoryBasedTimeout.builder().
       withTimeout(this.getClass()).withLookingForStuckThread(true).build();
   protected final HBaseTestingUtility UTIL = new HBaseTestingUtility();
@@ -191,11 +194,13 @@ public abstract class TableSnapshotInputFormatTestBase {
     String snapshotName, byte[] startRow, byte[] endRow, int numRegions)
     throws Exception {
     try {
+      LOG.debug("Ensuring table doesn't exist.");
       util.deleteTable(tableName);
     } catch(Exception ex) {
       // ignore
     }
 
+    LOG.info("creating table '" + tableName + "'");
     if (numRegions > 1) {
       util.createTable(tableName, FAMILIES, 1, startRow, endRow, numRegions);
     } else {
@@ -203,21 +208,22 @@ public abstract class TableSnapshotInputFormatTestBase {
     }
     Admin admin = util.getAdmin();
 
-    // put some stuff in the table
+    LOG.info("put some stuff in the table");
     Table table = util.getConnection().getTable(tableName);
     util.loadTable(table, FAMILIES);
 
     Path rootDir = FSUtils.getRootDir(util.getConfiguration());
     FileSystem fs = rootDir.getFileSystem(util.getConfiguration());
 
+    LOG.info("snapshot");
     SnapshotTestingUtils.createSnapshotAndValidate(admin, tableName,
       Arrays.asList(FAMILIES), null, snapshotName, rootDir, fs, true);
 
-    // load different values
+    LOG.info("load different values");
     byte[] value = Bytes.toBytes("after_snapshot_value");
     util.loadTable(table, FAMILIES, value);
 
-    // cause flush to create new files in the region
+    LOG.info("cause flush to create new files in the region");
     admin.flush(tableName);
     table.close();
   }

http://git-wip-us.apache.org/repos/asf/hbase/blob/8005d329/hbase-server/src/test/java/org/apache/hadoop/hbase/mapreduce/TestTableSnapshotInputFormat.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/mapreduce/TestTableSnapshotInputFormat.java
b/hbase-server/src/test/java/org/apache/hadoop/hbase/mapreduce/TestTableSnapshotInputFormat.java
index 3b91d3b..96584c5 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/mapreduce/TestTableSnapshotInputFormat.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/mapreduce/TestTableSnapshotInputFormat.java
@@ -24,6 +24,8 @@ import static org.mockito.Mockito.when;
 import java.io.IOException;
 import java.util.List;
 
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.hbase.CategoryBasedTimeout;
@@ -65,6 +67,7 @@ import org.apache.hadoop.hbase.util.FSUtils;
 
 @Category({VerySlowMapReduceTests.class, LargeTests.class})
 public class TestTableSnapshotInputFormat extends TableSnapshotInputFormatTestBase {
+  private static final Log LOG = LogFactory.getLog(TestTableSnapshotInputFormat.class);
   @Rule public final TestRule timeout = CategoryBasedTimeout.builder().
       withTimeout(this.getClass()).withLookingForStuckThread(true).build();
 
@@ -343,10 +346,13 @@ public class TestTableSnapshotInputFormat extends TableSnapshotInputFormatTestBa
       String snapshotName, byte[] startRow, byte[] endRow, Path tableDir, int numRegions,
       int expectedNumSplits, boolean shutdownCluster) throws Exception {
 
-    //create the table and snapshot
+    LOG.info("testing with MapReduce");
+
+    LOG.info("create the table and snapshot");
     createTableAndSnapshot(util, tableName, snapshotName, startRow, endRow, numRegions);
 
     if (shutdownCluster) {
+      LOG.info("shutting down hbase cluster.");
       util.shutdownMiniHBaseCluster();
     }
 

http://git-wip-us.apache.org/repos/asf/hbase/blob/8005d329/hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/SnapshotTestingUtils.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/SnapshotTestingUtils.java
b/hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/SnapshotTestingUtils.java
index b8438ca..dab55f6 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/SnapshotTestingUtils.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/SnapshotTestingUtils.java
@@ -209,7 +209,7 @@ public final class SnapshotTestingUtils {
     // check snapshot dir
     Path snapshotDir = SnapshotDescriptionUtils.getCompletedSnapshotDir(
         snapshotDescriptor, rootDir);
-    assertTrue(fs.exists(snapshotDir));
+    assertTrue("target snapshot directory, '"+ snapshotDir +"', doesn't exist.", fs.exists(snapshotDir));
 
     SnapshotProtos.SnapshotDescription desc = SnapshotDescriptionUtils.readSnapshotInfo(fs,
snapshotDir);
 
@@ -232,14 +232,14 @@ public final class SnapshotTestingUtils {
     // Verify that there are store files in the specified families
     if (nonEmptyTestFamilies != null) {
       for (final byte[] familyName: nonEmptyTestFamilies) {
-        assertTrue(snapshotFamilies.contains(familyName));
+        assertTrue("Expected snapshot to contain family '" + Bytes.toString(familyName) +
"', but it does not.", snapshotFamilies.contains(familyName));
       }
     }
 
     // Verify that there are no store files in the specified families
     if (emptyTestFamilies != null) {
       for (final byte[] familyName: emptyTestFamilies) {
-        assertFalse(snapshotFamilies.contains(familyName));
+        assertFalse("Expected snapshot to skip empty family '" + Bytes.toString(familyName)
+ "', but it is present.", snapshotFamilies.contains(familyName));
       }
     }
 
@@ -250,7 +250,7 @@ public final class SnapshotTestingUtils {
     boolean hasMob = regionManifests.containsKey(MobUtils.getMobRegionInfo(tableName)
         .getEncodedName());
     if (hasMob) {
-      assertEquals(regions.size(), regionManifests.size() - 1);
+      assertEquals("Wrong number of regions.", regions.size(), regionManifests.size() - 1);
     } else {
       // if create snapshot when table splitting, parent region will be included to the snapshot
       // region manifest. we should exclude the parent regions.
@@ -262,13 +262,13 @@ public final class SnapshotTestingUtils {
         }
         regionCountExclusiveSplitParent++;
       }
-      assertEquals(regions.size(), regionCountExclusiveSplitParent);
+      assertEquals("Wrong number of regions.", regions.size(), regionCountExclusiveSplitParent);
     }
 
     // Verify Regions (redundant check, see MasterSnapshotVerifier)
     for (HRegionInfo info : regions) {
       String regionName = info.getEncodedName();
-      assertTrue(regionManifests.containsKey(regionName));
+      assertTrue("Missing region name: '" + regionName + "'", regionManifests.containsKey(regionName));
     }
   }
 
@@ -403,20 +403,24 @@ public final class SnapshotTestingUtils {
         throws Exception {
     if (!onlineSnapshot) {
       try {
+        LOG.info("prepping for offline snapshot.");
         admin.disableTable(tableName);
       } catch (TableNotEnabledException tne) {
         LOG.info("In attempting to disable " + tableName + " it turns out that the this table
is " +
             "already disabled.");
       }
     }
+    LOG.info("taking snapshot.");
     admin.snapshot(snapshotNameString, tableName);
 
+    LOG.info("Confirming snapshot exists.");
     List<SnapshotDescription> snapshots =
         SnapshotTestingUtils.assertExistsMatchingSnapshot(admin, snapshotNameString, tableName);
     if (snapshots == null || snapshots.size() != 1) {
       Assert.fail("Incorrect number of snapshots for table " + tableName);
     }
 
+    LOG.info("validating snapshot.");
     SnapshotTestingUtils.confirmSnapshotValid(
       ProtobufUtil.createHBaseProtosSnapshotDesc(snapshots.get(0)), tableName, nonEmptyFamilyNames,
       emptyFamilyNames, rootDir, admin, fs);


Mime
View raw message