public class SnapshotTestingUtils
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
static class |
SnapshotTestingUtils.SnapshotMock |
Constructor and Description |
---|
SnapshotTestingUtils() |
Modifier and Type | Method and Description |
---|---|
static java.util.List<SnapshotDescription> |
assertExistsMatchingSnapshot(Admin admin,
java.lang.String snapshotName,
TableName tableName)
Make sure that there is only one snapshot returned from the master and its
name and table match the passed in parameters.
|
static void |
assertNoSnapshots(Admin admin)
Assert that we don't have any snapshots lists
|
static java.util.List<SnapshotDescription> |
assertOneSnapshotThatMatches(Admin admin,
byte[] snapshot,
TableName tableName)
Make sure that there is only one snapshot returned from the master and its
name and table match the passed in parameters.
|
static void |
assertOneSnapshotThatMatches(Admin admin,
SnapshotDescription snapshot)
Make sure that there is only one snapshot returned from the master
|
static java.util.List<SnapshotDescription> |
assertOneSnapshotThatMatches(Admin admin,
java.lang.String snapshotName,
TableName tableName)
Make sure that there is only one snapshot returned from the master and its
name and table match the passed in parameters.
|
static void |
cleanupSnapshot(Admin admin,
byte[] tableName) |
static void |
cleanupSnapshot(Admin admin,
java.lang.String snapshotName) |
static void |
confirmEmptySnapshotValid(SnapshotDescription snapshotDescriptor,
TableName tableName,
byte[] testFamily,
Path rootDir,
Admin admin,
FileSystem fs)
Confirm that the snapshot has no references files but only metadata.
|
static void |
confirmSnapshotValid(SnapshotDescription snapshotDescriptor,
TableName tableName,
byte[] testFamily,
Path rootDir,
Admin admin,
FileSystem fs)
Confirm that the snapshot contains references to all the files that should
be in the snapshot.
|
static void |
confirmSnapshotValid(SnapshotDescription snapshotDescriptor,
TableName tableName,
java.util.List<byte[]> nonEmptyTestFamilies,
java.util.List<byte[]> emptyTestFamilies,
Path rootDir,
Admin admin,
FileSystem fs)
Confirm that the snapshot contains references to all the files that should
be in the snapshot.
|
static java.util.ArrayList |
corruptSnapshot(HBaseTestingUtility util,
java.lang.String snapshotName)
Corrupt the specified snapshot by deleting some files.
|
static void |
createSnapshotAndValidate(Admin admin,
TableName tableName,
java.util.List<byte[]> nonEmptyFamilyNames,
java.util.List<byte[]> emptyFamilyNames,
java.lang.String snapshotNameString,
Path rootDir,
FileSystem fs,
boolean onlineSnapshot)
Take a snapshot of the specified table and verify the given families.
|
static void |
createSnapshotAndValidate(Admin admin,
TableName tableName,
java.lang.String familyName,
java.lang.String snapshotNameString,
Path rootDir,
FileSystem fs,
boolean onlineSnapshot)
Take a snapshot of the specified table and verify that the given family is
not empty.
|
static void |
createTable(HBaseTestingUtility util,
TableName tableName,
byte[]... families) |
static void |
createTable(HBaseTestingUtility util,
TableName tableName,
int regionReplication,
byte[]... families) |
static void |
deleteAllSnapshots(Admin admin) |
static void |
deleteArchiveDirectory(HBaseTestingUtility util) |
static void |
expectSnapshotDoneException(HMaster master,
IsSnapshotDoneRequest snapshot,
java.lang.Class<? extends HBaseSnapshotException> clazz)
Expect the snapshot to throw an error when checking if the snapshot is
complete
|
static byte[][] |
getSplitKeys() |
static java.lang.String[] |
listHFileNames(FileSystem fs,
Path tableDir) |
static Path[] |
listHFiles(FileSystem fs,
Path tableDir)
List all the HFiles in the given table
|
static void |
loadData(HBaseTestingUtility util,
BufferedMutator mutator,
int rows,
byte[]... families) |
static void |
loadData(HBaseTestingUtility util,
TableName tableName,
int rows,
byte[]... families) |
static void |
snapshot(Admin admin,
java.lang.String snapshotName,
java.lang.String tableName,
SnapshotDescription.Type type,
int numTries) |
static void |
verifyReplicasCameOnline(TableName tableName,
Admin admin,
int regionReplication) |
static void |
verifyRowCount(HBaseTestingUtility util,
TableName tableName,
long expectedRows) |
static void |
waitForSnapshotToComplete(HMaster master,
SnapshotDescription snapshot,
long sleep)
Helper method for testing async snapshot operations.
|
static void |
waitForTableToBeOnline(HBaseTestingUtility util,
TableName tableName) |
public static void assertNoSnapshots(Admin admin) throws java.io.IOException
java.io.IOException
- if the admin operation failspublic static java.util.List<SnapshotDescription> assertExistsMatchingSnapshot(Admin admin, java.lang.String snapshotName, TableName tableName) throws java.io.IOException
java.io.IOException
public static void assertOneSnapshotThatMatches(Admin admin, SnapshotDescription snapshot) throws java.io.IOException
java.io.IOException
public static java.util.List<SnapshotDescription> assertOneSnapshotThatMatches(Admin admin, java.lang.String snapshotName, TableName tableName) throws java.io.IOException
java.io.IOException
public static java.util.List<SnapshotDescription> assertOneSnapshotThatMatches(Admin admin, byte[] snapshot, TableName tableName) throws java.io.IOException
java.io.IOException
public static void confirmSnapshotValid(SnapshotDescription snapshotDescriptor, TableName tableName, byte[] testFamily, Path rootDir, Admin admin, FileSystem fs) throws java.io.IOException
java.io.IOException
public static void confirmEmptySnapshotValid(SnapshotDescription snapshotDescriptor, TableName tableName, byte[] testFamily, Path rootDir, Admin admin, FileSystem fs) throws java.io.IOException
java.io.IOException
public static void confirmSnapshotValid(SnapshotDescription snapshotDescriptor, TableName tableName, java.util.List<byte[]> nonEmptyTestFamilies, java.util.List<byte[]> emptyTestFamilies, Path rootDir, Admin admin, FileSystem fs) throws java.io.IOException
java.io.IOException
public static void waitForSnapshotToComplete(HMaster master, SnapshotDescription snapshot, long sleep) throws ServiceException
master:
- the master running the snapshotsnapshot:
- the snapshot to checksleep:
- amount to sleep between checks to see if the snapshot is doneServiceException
- if the snapshot failspublic static void snapshot(Admin admin, java.lang.String snapshotName, java.lang.String tableName, SnapshotDescription.Type type, int numTries) throws java.io.IOException
java.io.IOException
public static void cleanupSnapshot(Admin admin, byte[] tableName) throws java.io.IOException
java.io.IOException
public static void cleanupSnapshot(Admin admin, java.lang.String snapshotName) throws java.io.IOException
java.io.IOException
public static void expectSnapshotDoneException(HMaster master, IsSnapshotDoneRequest snapshot, java.lang.Class<? extends HBaseSnapshotException> clazz)
master
- master to checksnapshot
- the SnapshotDescription
request to pass to the masterclazz
- expected exception from the masterpublic static Path[] listHFiles(FileSystem fs, Path tableDir) throws java.io.IOException
fs:
- FileSystem where the table livestableDir
- directory of the tablejava.io.IOException
- on unexecpted error reading the FSpublic static java.lang.String[] listHFileNames(FileSystem fs, Path tableDir) throws java.io.IOException
java.io.IOException
public static void createSnapshotAndValidate(Admin admin, TableName tableName, java.lang.String familyName, java.lang.String snapshotNameString, Path rootDir, FileSystem fs, boolean onlineSnapshot) throws java.lang.Exception
java.lang.Exception
public static void createSnapshotAndValidate(Admin admin, TableName tableName, java.util.List<byte[]> nonEmptyFamilyNames, java.util.List<byte[]> emptyFamilyNames, java.lang.String snapshotNameString, Path rootDir, FileSystem fs, boolean onlineSnapshot) throws java.lang.Exception
java.lang.Exception
public static java.util.ArrayList corruptSnapshot(HBaseTestingUtility util, java.lang.String snapshotName) throws java.io.IOException
util
- HBaseTestingUtility
snapshotName
- name of the snapshot to corruptjava.io.IOException
- on unexecpted error reading the FSpublic static void waitForTableToBeOnline(HBaseTestingUtility util, TableName tableName) throws java.io.IOException, java.lang.InterruptedException
java.io.IOException
java.lang.InterruptedException
public static void createTable(HBaseTestingUtility util, TableName tableName, int regionReplication, byte[]... families) throws java.io.IOException, java.lang.InterruptedException
java.io.IOException
java.lang.InterruptedException
public static byte[][] getSplitKeys()
public static void createTable(HBaseTestingUtility util, TableName tableName, byte[]... families) throws java.io.IOException, java.lang.InterruptedException
java.io.IOException
java.lang.InterruptedException
public static void loadData(HBaseTestingUtility util, TableName tableName, int rows, byte[]... families) throws java.io.IOException, java.lang.InterruptedException
java.io.IOException
java.lang.InterruptedException
public static void loadData(HBaseTestingUtility util, BufferedMutator mutator, int rows, byte[]... families) throws java.io.IOException, java.lang.InterruptedException
java.io.IOException
java.lang.InterruptedException
public static void deleteAllSnapshots(Admin admin) throws java.io.IOException
java.io.IOException
public static void deleteArchiveDirectory(HBaseTestingUtility util) throws java.io.IOException
java.io.IOException
public static void verifyRowCount(HBaseTestingUtility util, TableName tableName, long expectedRows) throws java.io.IOException
java.io.IOException
public static void verifyReplicasCameOnline(TableName tableName, Admin admin, int regionReplication) throws java.io.IOException
java.io.IOException