From 654e0528887a528a054476d3bbd2c5694a888972 Mon Sep 17 00:00:00 2001 From: Josh Elser Date: Tue, 21 Nov 2017 13:34:51 -0500 Subject: [PATCH] HBASE-19310 Avoid an NPE IntegrationTestImportTsv when outside of the context of JUnit --- .../hbase/mapreduce/IntegrationTestImportTsv.java | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/hbase-it/src/test/java/org/apache/hadoop/hbase/mapreduce/IntegrationTestImportTsv.java b/hbase-it/src/test/java/org/apache/hadoop/hbase/mapreduce/IntegrationTestImportTsv.java index 887dd8b0d5..79c8dd86f9 100644 --- a/hbase-it/src/test/java/org/apache/hadoop/hbase/mapreduce/IntegrationTestImportTsv.java +++ b/hbase-it/src/test/java/org/apache/hadoop/hbase/mapreduce/IntegrationTestImportTsv.java @@ -185,13 +185,15 @@ public class IntegrationTestImportTsv extends Configured implements Tool { @Test public void testGenerateAndLoad() throws Exception { + generateAndLoad(TableName.valueOf(name.getMethodName())); + } + + void generateAndLoad(final TableName table) throws Exception { LOG.info("Running test testGenerateAndLoad."); - final TableName table = TableName.valueOf(name.getMethodName()); String cf = "d"; Path hfiles = new Path( util.getDataTestDirOnTestFS(table.getNameAsString()), "hfiles"); - Map args = new HashMap<>(); args.put(ImportTsv.BULK_OUTPUT_CONF_KEY, hfiles.toString()); args.put(ImportTsv.COLUMNS_CONF_KEY, @@ -226,7 +228,16 @@ public class IntegrationTestImportTsv extends Configured implements Tool { // adding more test methods? Don't forget to add them here... or consider doing what // IntegrationTestsDriver does. provisionCluster(); - testGenerateAndLoad(); + TableName tableName = TableName.valueOf("IntegrationTestImportTsv"); + if (util.getAdmin().tableExists(tableName)) { + try { + util.deleteTable(tableName); + } catch (IOException e) { + LOG.info("Caught exception trying to clean up table from previous test run," + + " proceeding anyways."); + } + } + generateAndLoad(tableName); releaseCluster(); return 0; -- 2.14.1