HBASE-16271 Fix logging and re-run the test in IntegrationTestBulkLoad
This commit is contained in:
parent
12549de43c
commit
dbd10eee3e
@ -72,6 +72,7 @@ import org.apache.hadoop.mapreduce.RecordReader;
|
||||
import org.apache.hadoop.mapreduce.Reducer;
|
||||
import org.apache.hadoop.mapreduce.TaskAttemptContext;
|
||||
import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;
|
||||
import org.apache.hadoop.util.StringUtils;
|
||||
import org.apache.hadoop.util.ToolRunner;
|
||||
import org.junit.Test;
|
||||
import org.junit.experimental.categories.Category;
|
||||
@ -214,7 +215,7 @@ public class IntegrationTestBulkLoad extends IntegrationTestBase {
|
||||
public void testBulkLoad() throws Exception {
|
||||
runLoad();
|
||||
installSlowingCoproc();
|
||||
runCheck();
|
||||
runCheckWithRetry();
|
||||
}
|
||||
|
||||
public void runLoad() throws Exception {
|
||||
@ -659,15 +660,30 @@ public class IntegrationTestBulkLoad extends IntegrationTestBase {
|
||||
}
|
||||
|
||||
private static void logError(String msg, Context context) throws IOException {
|
||||
HBaseTestingUtility util = new HBaseTestingUtility(context.getConfiguration());
|
||||
TableName table = getTableName(context.getConfiguration());
|
||||
|
||||
LOG.error("Failure in chain verification: " + msg);
|
||||
LOG.error("cluster status:\n" + util.getHBaseClusterInterface().getClusterStatus());
|
||||
try (Connection connection = ConnectionFactory.createConnection(context.getConfiguration());
|
||||
Admin admin = connection.getAdmin()) {
|
||||
LOG.error("cluster status:\n" + admin.getClusterStatus());
|
||||
LOG.error("table regions:\n"
|
||||
+ Joiner.on("\n").join(util.getHBaseAdmin().getTableRegions(table)));
|
||||
+ Joiner.on("\n").join(admin.getTableRegions(table)));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void runCheckWithRetry() throws IOException, ClassNotFoundException, InterruptedException {
|
||||
try {
|
||||
runCheck();
|
||||
} catch (Throwable t) {
|
||||
LOG.warn("Received " + StringUtils.stringifyException(t));
|
||||
LOG.warn("Running the check MR Job again to see whether an ephemeral problem or not");
|
||||
runCheck();
|
||||
throw t; // we should still fail the test even if second retry succeeds
|
||||
}
|
||||
// everything green
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* After adding data to the table start a mr job to
|
||||
@ -762,7 +778,7 @@ public class IntegrationTestBulkLoad extends IntegrationTestBase {
|
||||
runLoad();
|
||||
} else if (check) {
|
||||
installSlowingCoproc();
|
||||
runCheck();
|
||||
runCheckWithRetry();
|
||||
} else {
|
||||
testBulkLoad();
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user