hbase-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From mberto...@apache.org
Subject svn commit: r1527018 - in /hbase/branches/0.96/hbase-server/src/test/java/org/apache/hadoop/hbase: client/TestSnapshotMetadata.java master/cleaner/TestSnapshotFromMaster.java snapshot/SnapshotTestingUtils.java
Date Fri, 27 Sep 2013 18:26:54 GMT
Author: mbertozzi
Date: Fri Sep 27 18:26:54 2013
New Revision: 1527018

URL: http://svn.apache.org/r1527018
Log:
HBASE-9548 Cleanup SnapshotTestingUtils

Modified:
    hbase/branches/0.96/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestSnapshotMetadata.java
    hbase/branches/0.96/hbase-server/src/test/java/org/apache/hadoop/hbase/master/cleaner/TestSnapshotFromMaster.java
    hbase/branches/0.96/hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/SnapshotTestingUtils.java

Modified: hbase/branches/0.96/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestSnapshotMetadata.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.96/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestSnapshotMetadata.java?rev=1527018&r1=1527017&r2=1527018&view=diff
==============================================================================
--- hbase/branches/0.96/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestSnapshotMetadata.java
(original)
+++ hbase/branches/0.96/hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestSnapshotMetadata.java
Fri Sep 27 18:26:54 2013
@@ -24,6 +24,8 @@ import static org.junit.Assert.assertTru
 import java.util.ArrayList;
 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.FileSystem;
 import org.apache.hadoop.fs.Path;
@@ -40,6 +42,7 @@ import org.apache.hadoop.hbase.regionser
 import org.apache.hadoop.hbase.snapshot.SnapshotTestingUtils;
 import org.apache.hadoop.hbase.util.Bytes;
 import org.junit.After;
+import org.junit.AfterClass;
 import org.junit.Before;
 import org.junit.BeforeClass;
 import org.junit.Test;
@@ -50,6 +53,8 @@ import org.junit.experimental.categories
  */
 @Category(MediumTests.class)
 public class TestSnapshotMetadata {
+  private static final Log LOG = LogFactory.getLog(TestSnapshotMetadata.class);
+
   private static final HBaseTestingUtility UTIL = new HBaseTestingUtility();
   private static final int NUM_RS = 2;
   private static final String STRING_TABLE_NAME = "TestSnapshotMetadata";
@@ -92,6 +97,15 @@ public class TestSnapshotMetadata {
     rootDir = UTIL.getHBaseCluster().getMaster().getMasterFileSystem().getRootDir();
   }
 
+  @AfterClass
+  public static void cleanupTest() throws Exception {
+    try {
+      UTIL.shutdownMiniCluster();
+    } catch (Exception e) {
+      LOG.warn("failure shutting down cluster", e);
+    }
+  }
+
   private static void setupConf(Configuration conf) {
     // enable snapshot support
     conf.setBoolean(SnapshotManager.HBASE_SNAPSHOT_ENABLED, true);
@@ -114,21 +128,19 @@ public class TestSnapshotMetadata {
 
   @Before
   public void setup() throws Exception {
+    admin = UTIL.getHBaseAdmin();
     createTableWithNonDefaultProperties();
   }
 
   @After
   public void tearDown() throws Exception {
-    admin.close();
+    SnapshotTestingUtils.deleteAllSnapshots(admin);
   }
 
   /*
    *  Create a table that has non-default properties so we can see if they hold
    */
   private void createTableWithNonDefaultProperties() throws Exception {
-    // create a table
-    admin = new HBaseAdmin(UTIL.getConfiguration());
-
     final long startTime = System.currentTimeMillis();
     final String sourceTableNameAsString = STRING_TABLE_NAME + startTime;
     originalTableName = TableName.valueOf(sourceTableNameAsString);
@@ -181,7 +193,7 @@ public class TestSnapshotMetadata {
 
     // Create a snapshot in which all families are empty
     SnapshotTestingUtils.createSnapshotAndValidate(admin, originalTableName, null,
-      familiesList, snapshotNameAsString, rootDir, fs);
+      familiesList, snapshotNameAsString, rootDir, fs, /* onlineSnapshot= */ false);
 
     admin.cloneSnapshot(snapshotName, clonedTableName);
     HTable clonedTable = new HTable(UTIL.getConfiguration(), clonedTableName);
@@ -254,13 +266,14 @@ public class TestSnapshotMetadata {
       }
     }
 
-    // take a snapshot
+    // take a "disabled" snapshot
     final String snapshotNameAsString = "snapshot" + originalTableName
         + System.currentTimeMillis();
     final byte[] snapshotName = Bytes.toBytes(snapshotNameAsString);
 
     SnapshotTestingUtils.createSnapshotAndValidate(admin, originalTableName,
-      familiesWithDataList, emptyFamiliesList, snapshotNameAsString, rootDir, fs);
+      familiesWithDataList, emptyFamiliesList, snapshotNameAsString, rootDir, fs,
+      /* onlineSnapshot= */ false);
 
     admin.enableTable(originalTableName);
 

Modified: hbase/branches/0.96/hbase-server/src/test/java/org/apache/hadoop/hbase/master/cleaner/TestSnapshotFromMaster.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.96/hbase-server/src/test/java/org/apache/hadoop/hbase/master/cleaner/TestSnapshotFromMaster.java?rev=1527018&r1=1527017&r2=1527018&view=diff
==============================================================================
--- hbase/branches/0.96/hbase-server/src/test/java/org/apache/hadoop/hbase/master/cleaner/TestSnapshotFromMaster.java
(original)
+++ hbase/branches/0.96/hbase-server/src/test/java/org/apache/hadoop/hbase/master/cleaner/TestSnapshotFromMaster.java
Fri Sep 27 18:26:54 2013
@@ -330,19 +330,19 @@ public class TestSnapshotFromMaster {
 
     // get the snapshot files for the table
     Path snapshotTable = SnapshotDescriptionUtils.getCompletedSnapshotDir(snapshotName, rootDir);
-    FileStatus[] snapshotHFiles = SnapshotTestingUtils.listHFiles(fs, snapshotTable);
+    Path[] snapshotHFiles = SnapshotTestingUtils.listHFiles(fs, snapshotTable);
     // check that the files in the archive contain the ones that we need for the snapshot
     LOG.debug("Have snapshot hfiles:");
-    for (FileStatus file : snapshotHFiles) {
-      LOG.debug(file.getPath());
+    for (Path file : snapshotHFiles) {
+      LOG.debug(file);
     }
     // get the archived files for the table
     Collection<String> files = getArchivedHFiles(archiveDir, rootDir, fs, TABLE_NAME);
 
     // and make sure that there is a proper subset
-    for (FileStatus file : snapshotHFiles) {
-      assertTrue("Archived hfiles " + files + " is missing snapshot file:" + file.getPath(),
-        files.contains(file.getPath().getName()));
+    for (Path file : snapshotHFiles) {
+      assertTrue("Archived hfiles " + files + " is missing snapshot file:" + file,
+        files.contains(file.getName()));
     }
 
     // delete the existing snapshot
@@ -376,12 +376,12 @@ public class TestSnapshotFromMaster {
   private final Collection<String> getArchivedHFiles(Path archiveDir, Path rootDir,
       FileSystem fs, TableName tableName) throws IOException {
     Path tableArchive = FSUtils.getTableDir(archiveDir, tableName);
-    FileStatus[] archivedHFiles = SnapshotTestingUtils.listHFiles(fs, tableArchive);
+    Path[] archivedHFiles = SnapshotTestingUtils.listHFiles(fs, tableArchive);
     List<String> files = new ArrayList<String>(archivedHFiles.length);
     LOG.debug("Have archived hfiles: " + tableArchive);
-    for (FileStatus file : archivedHFiles) {
-      LOG.debug(file.getPath());
-      files.add(file.getPath().getName());
+    for (Path file : archivedHFiles) {
+      LOG.debug(file);
+      files.add(file.getName());
     }
     // sort the archived files
 

Modified: hbase/branches/0.96/hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/SnapshotTestingUtils.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.96/hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/SnapshotTestingUtils.java?rev=1527018&r1=1527017&r2=1527018&view=diff
==============================================================================
--- hbase/branches/0.96/hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/SnapshotTestingUtils.java
(original)
+++ hbase/branches/0.96/hbase-server/src/test/java/org/apache/hadoop/hbase/snapshot/SnapshotTestingUtils.java
Fri Sep 27 18:26:54 2013
@@ -18,6 +18,7 @@
 package org.apache.hadoop.hbase.snapshot;
 
 import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
 
 import java.io.IOException;
@@ -26,6 +27,7 @@ import java.util.Arrays;
 import java.util.Collection;
 import java.util.List;
 import java.util.Set;
+import java.util.HashSet;
 import java.util.TreeSet;
 
 import org.apache.commons.logging.Log;
@@ -57,6 +59,7 @@ import org.apache.hadoop.hbase.regionser
 import org.apache.hadoop.hbase.util.Bytes;
 import org.apache.hadoop.hbase.util.FSTableDescriptors;
 import org.apache.hadoop.hbase.util.FSUtils;
+import org.apache.hadoop.hbase.util.FSVisitor;
 import org.apache.hadoop.hbase.util.MD5Hash;
 import org.junit.Assert;
 
@@ -139,85 +142,112 @@ public class SnapshotTestingUtils {
   }
 
   /**
-   * Multi-family version of the confirmSnapshotValid function
+   * Confirm that the snapshot contains references to all the files that should
+   * be in the snapshot.
    */
   public static void confirmSnapshotValid(
       SnapshotDescription snapshotDescriptor, TableName tableName,
-      List<byte[]> nonEmptyTestFamilies, List<byte[]> emptyTestFamilies,
-      Path rootDir, HBaseAdmin admin, FileSystem fs, boolean requireLogs,
-      Path logsDir, Set<String> snapshotServers) throws IOException {
-    if (nonEmptyTestFamilies != null) {
-      for (byte[] testFamily : nonEmptyTestFamilies) {
-        confirmSnapshotValid(snapshotDescriptor, tableName, testFamily,
-            rootDir, admin, fs, requireLogs, logsDir, false, null);
-      }
-    }
-
-    if (emptyTestFamilies != null) {
-      for (byte[] testFamily : emptyTestFamilies) {
-        confirmSnapshotValid(snapshotDescriptor, tableName, testFamily,
-            rootDir, admin, fs, requireLogs, logsDir, true, null);
-      }
-    }
+      byte[] testFamily, Path rootDir, HBaseAdmin admin, FileSystem fs,
+      boolean requireLogs, Path logsDir, Set<String> snapshotServers)
+      throws IOException {
+    ArrayList nonEmptyTestFamilies = new ArrayList(1);
+    nonEmptyTestFamilies.add(testFamily);
+    confirmSnapshotValid(snapshotDescriptor, tableName,
+      nonEmptyTestFamilies, null, rootDir, admin, fs, requireLogs,
+      logsDir, snapshotServers);
   }
 
   /**
-   * Confirm that the snapshot contains references to all the files that should
-   * be in the snapshot.
+   * Confirm that the snapshot has no references files but only metadata.
    */
-  public static void confirmSnapshotValid(
+  public static void confirmEmptySnapshotValid(
       SnapshotDescription snapshotDescriptor, TableName tableName,
       byte[] testFamily, Path rootDir, HBaseAdmin admin, FileSystem fs,
       boolean requireLogs, Path logsDir, Set<String> snapshotServers)
       throws IOException {
-    confirmSnapshotValid(snapshotDescriptor, tableName, testFamily, rootDir,
-        admin, fs, requireLogs, logsDir, false, snapshotServers);
+    ArrayList emptyTestFamilies = new ArrayList(1);
+    emptyTestFamilies.add(testFamily);
+    confirmSnapshotValid(snapshotDescriptor, tableName,
+      null, emptyTestFamilies, rootDir, admin, fs, requireLogs,
+      logsDir, snapshotServers);
   }
 
   /**
    * Confirm that the snapshot contains references to all the files that should
-   * be in the snapshot.
+   * be in the snapshot. This method also perform some redundant check like
+   * the existence of the snapshotinfo or the regioninfo which are done always
+   * by the MasterSnapshotVerifier, at the end of the snapshot operation.
    */
   public static void confirmSnapshotValid(
       SnapshotDescription snapshotDescriptor, TableName tableName,
-      byte[] testFamily, Path rootDir, HBaseAdmin admin, FileSystem fs,
-      boolean requireLogs, Path logsDir, boolean familyEmpty,
-      Set<String> snapshotServers) throws IOException {
+      List<byte[]> nonEmptyTestFamilies, List<byte[]> emptyTestFamilies,
+      Path rootDir, HBaseAdmin admin, FileSystem fs, boolean requireLogs,
+      Path logsDir, Set<String> snapshotServers) throws IOException {
+    // check snapshot dir
     Path snapshotDir = SnapshotDescriptionUtils.getCompletedSnapshotDir(
         snapshotDescriptor, rootDir);
     assertTrue(fs.exists(snapshotDir));
-    Path snapshotinfo = new Path(snapshotDir,
-        SnapshotDescriptionUtils.SNAPSHOTINFO_FILE);
+
+    // check snapshot info
+    Path snapshotinfo = new Path(snapshotDir, SnapshotDescriptionUtils.SNAPSHOTINFO_FILE);
     assertTrue(fs.exists(snapshotinfo));
+
     // check the logs dir
     if (requireLogs) {
       TakeSnapshotUtils.verifyAllLogsGotReferenced(fs, logsDir,
           snapshotServers, snapshotDescriptor, new Path(snapshotDir,
               HConstants.HREGION_LOGDIR_NAME));
     }
+
     // check the table info
-    HTableDescriptor desc = FSTableDescriptors.getTableDescriptorFromFs(fs, rootDir,
-        tableName);
-    HTableDescriptor snapshotDesc = FSTableDescriptors.getTableDescriptorFromFs(fs,
-        snapshotDir);
+    HTableDescriptor desc = FSTableDescriptors.getTableDescriptorFromFs(fs, rootDir, tableName);
+    HTableDescriptor snapshotDesc = FSTableDescriptors.getTableDescriptorFromFs(fs, snapshotDir);
     assertEquals(desc, snapshotDesc);
 
+    // Extract regions and families with store files
+    final Set<String> snapshotRegions = new HashSet<String>();
+    final Set<byte[]> snapshotFamilies = new TreeSet<byte[]>(Bytes.BYTES_COMPARATOR);
+    FSVisitor.visitTableStoreFiles(fs, snapshotDir, new FSVisitor.StoreFileVisitor() {
+      public void storeFile(final String region, final String family, final String hfileName)
+          throws IOException {
+        snapshotRegions.add(region);
+        snapshotFamilies.add(Bytes.toBytes(family));
+      }
+    });
+
+    // Verify that there are store files in the specified families
+    if (nonEmptyTestFamilies != null) {
+      for (final byte[] familyName: nonEmptyTestFamilies) {
+        assertTrue(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));
+      }
+    }
+
+    // Avoid checking regions if the request is for an empty snapshot
+    if ((nonEmptyTestFamilies == null || nonEmptyTestFamilies.size() == 0) &&
+        (emptyTestFamilies != null && emptyTestFamilies.size() > 0)) {
+      assertEquals(0, snapshotRegions.size());
+      return;
+    }
+
     // check the region snapshot for all the regions
     List<HRegionInfo> regions = admin.getTableRegions(tableName);
+    assertEquals(regions.size(), snapshotRegions.size());
+
+    // Verify Regions
     for (HRegionInfo info : regions) {
       String regionName = info.getEncodedName();
+      assertTrue(snapshotRegions.contains(regionName));
+
       Path regionDir = new Path(snapshotDir, regionName);
       HRegionInfo snapshotRegionInfo = HRegionFileSystem.loadRegionInfoFileContent(fs, regionDir);
       assertEquals(info, snapshotRegionInfo);
-
-      // check to make sure we have the family
-      if (!familyEmpty) {
-        Path familyDir = new Path(regionDir, Bytes.toString(testFamily));
-        assertTrue("Expected to find: " + familyDir + ", but it doesn't exist",
-            fs.exists(familyDir));
-        // make sure we have some files references
-        assertTrue(fs.listStatus(familyDir).length > 0);
-      }
     }
   }
 
@@ -291,157 +321,60 @@ public class SnapshotTestingUtils {
    * @return array of the current HFiles in the table (could be a zero-length array)
    * @throws IOException on unexecpted error reading the FS
    */
-  public static FileStatus[] listHFiles(final FileSystem fs, Path tableDir)
+  public static Path[] listHFiles(final FileSystem fs, final Path tableDir)
       throws IOException {
-    // setup the filters we will need based on the filesystem
-    PathFilter regionFilter = new FSUtils.RegionDirFilter(fs);
-    PathFilter familyFilter = new FSUtils.FamilyDirFilter(fs);
-    final PathFilter fileFilter = new PathFilter() {
-      @Override
-      public boolean accept(Path file) {
-        try {
-          return fs.isFile(file);
-        } catch (IOException e) {
-          return false;
-        }
+    final ArrayList<Path> hfiles = new ArrayList<Path>();
+    FSVisitor.visitTableStoreFiles(fs, tableDir, new FSVisitor.StoreFileVisitor() {
+      public void storeFile(final String region, final String family, final String hfileName)
+          throws IOException {
+        hfiles.add(new Path(tableDir, new Path(region, new Path(family, hfileName))));
       }
-    };
-
-    FileStatus[] regionDirs = FSUtils.listStatus(fs, tableDir, regionFilter);
-    // if no regions, then we are done
-    if (regionDirs == null || regionDirs.length == 0)
-      return new FileStatus[0];
-
-    // go through each of the regions, and add al the hfiles under each family
-    List<FileStatus> regionFiles = new ArrayList<FileStatus>(regionDirs.length);
-    for (FileStatus regionDir : regionDirs) {
-      FileStatus[] fams = FSUtils.listStatus(fs, regionDir.getPath(),
-          familyFilter);
-      // if no families, then we are done again
-      if (fams == null || fams.length == 0)
-        continue;
-      // add all the hfiles under the family
-      regionFiles.addAll(SnapshotTestingUtils.getHFilesInRegion(fams, fs,
-          fileFilter));
-    }
-    FileStatus[] files = new FileStatus[regionFiles.size()];
-    regionFiles.toArray(files);
-    return files;
+    });
+    return hfiles.toArray(new Path[hfiles.size()]);
   }
 
   /**
-   * Get all the hfiles in the region, under the passed set of families
-   *
-   * @param families: all the family directories under the region
-   * @param fs: filesystem where the families live
-   * @param fileFilter: filter to only include files
-   * @return collection of all the hfiles under all the passed in families (non-null)
-   * @throws IOException on unexecpted error reading the FS
-   */
-  public static Collection<FileStatus> getHFilesInRegion(FileStatus[] families,
-      FileSystem fs, PathFilter fileFilter) throws IOException {
-    Set<FileStatus> files = new TreeSet<FileStatus>();
-    for (FileStatus family : families) {
-      // get all the hfiles in the family
-      FileStatus[] hfiles = FSUtils
-          .listStatus(fs, family.getPath(), fileFilter);
-      // if no hfiles, then we are done with this family
-      if (hfiles == null || hfiles.length == 0)
-        continue;
-      files.addAll(Arrays.asList(hfiles));
-    }
-    return files;
-  }
-
-  /**
-   * Take an offline snapshot of the specified table and verify if the given
-   * family is empty. Note that this will leave the table disabled
+   * Take a snapshot of the specified table and verify that the given family is
+   * not empty. Note that this will leave the table disabled
    * in the case of an offline snapshot.
    */
-  public static void createOfflineSnapshotAndValidate(HBaseAdmin admin,
+  public static void createSnapshotAndValidate(HBaseAdmin admin,
       TableName tableName, String familyName, String snapshotNameString,
-      Path rootDir, FileSystem fs, boolean familyEmpty) throws Exception {
-
-    createSnapshotAndValidate(admin, tableName, familyName,
-        snapshotNameString, rootDir, fs, familyEmpty, false);
+      Path rootDir, FileSystem fs, boolean onlineSnapshot)
+      throws Exception {
+    ArrayList<byte[]> nonEmptyFamilyNames = new ArrayList<byte[]>(1);
+    nonEmptyFamilyNames.add(Bytes.toBytes(familyName));
+    createSnapshotAndValidate(admin, tableName, nonEmptyFamilyNames, /* emptyFamilyNames=
*/ null,
+                              snapshotNameString, rootDir, fs, onlineSnapshot);
   }
 
   /**
-   * Take a snapshot of the specified table and verify if the given family is
-   * empty. Note that this will leave the table disabled
-   * in the case of an offline snapshot.
+   * Take a snapshot of the specified table and verify the given families.
+   * Note that this will leave the table disabled in the case of an offline snapshot.
    */
   public static void createSnapshotAndValidate(HBaseAdmin admin,
-      TableName tableName, String familyName, String snapshotNameString,
-      Path rootDir, FileSystem fs, boolean familyEmpty, boolean onlineSnapshot)
-      throws Exception {
-
+      TableName tableName, List<byte[]> nonEmptyFamilyNames, List<byte[]> emptyFamilyNames,
+      String snapshotNameString, Path rootDir, FileSystem fs, boolean onlineSnapshot)
+        throws Exception {
     if (!onlineSnapshot) {
       try {
         admin.disableTable(tableName);
       } catch (TableNotEnabledException tne) {
-        LOG.info("In attempting to disable " + tableName
-            + " it turns out that this table is already disabled.");
+        LOG.info("In attempting to disable " + tableName + " it turns out that the this table
is " +
+            "already disabled.");
       }
     }
-
-    admin.snapshot(snapshotNameString, tableName);
-
-    List<SnapshotDescription> snapshots = SnapshotTestingUtils
-        .assertExistsMatchingSnapshot(admin, snapshotNameString,
-            tableName);
-
-    if (snapshots == null || snapshots.size() != 1) {
-      Assert.fail("Incorrect number of snapshots for table "
-          + tableName);
-    }
-
-    SnapshotTestingUtils.confirmSnapshotValid(snapshots.get(0), tableName,
-        Bytes.toBytes(familyName), rootDir, admin, fs, false, new Path(rootDir,
-            HConstants.HREGION_LOGDIR_NAME), familyEmpty, null);
-  }
-  public static void createSnapshotAndValidate(HBaseAdmin admin,
-      TableName tableName, String familyName, String snapshotNameString,
-      Path rootDir, FileSystem fs) throws Exception {
-    createSnapshotAndValidate(admin, tableName, familyName,
-        snapshotNameString, rootDir, fs, false, false);
-  }
-
-  /**
-   * This will create a snapshot. Note that this has the side effect
-   * of leaving the input table disabled if the offline snapshot
-   * option is chosen.
-   *
-   */
-  public static void createSnapshotAndValidate(HBaseAdmin admin,
-      TableName tableName, String familyName, String snapshotNameString,
-      Path rootDir, FileSystem fs, boolean online) throws Exception {
-    createSnapshotAndValidate(admin, tableName, familyName,
-        snapshotNameString, rootDir, fs, false, online);
-  }
-
-  public static void createSnapshotAndValidate(HBaseAdmin admin,
-      TableName tableName, List<byte[]> nonEmptyFamilyNames, List<byte[]> emptyFamilyNames,
-      String snapshotNameString, Path rootDir, FileSystem fs) throws Exception {
-
-    try {
-      admin.disableTable(tableName);
-    } catch (TableNotEnabledException tne) {
-      LOG.info("In attempting to disable " + tableName + " it turns out that the this table
is " +
-          "already disabled.");
-    }
     admin.snapshot(snapshotNameString, tableName);
 
     List<SnapshotDescription> snapshots = SnapshotTestingUtils.assertExistsMatchingSnapshot(admin,
       snapshotNameString, tableName);
-
-    // Create test-timestamp-clone
     if (snapshots == null || snapshots.size() != 1) {
       Assert.fail("Incorrect number of snapshots for table " + tableName);
     }
 
-    SnapshotTestingUtils.confirmSnapshotValid(snapshots.get(0), tableName, nonEmptyFamilyNames,
emptyFamilyNames,
-      rootDir, admin, fs, false, new Path(rootDir, HConstants.HREGION_LOGDIR_NAME), null);
+    SnapshotTestingUtils.confirmSnapshotValid(snapshots.get(0), tableName, nonEmptyFamilyNames,
+      emptyFamilyNames, rootDir, admin, fs, false,
+      new Path(rootDir, HConstants.HREGION_LOGDIR_NAME), null);
   }
 
   // ==========================================================================



Mime
View raw message