diff --git src/test/java/org/apache/hadoop/hbase/PerformanceEvaluation.java src/test/java/org/apache/hadoop/hbase/PerformanceEvaluation.java index 16c7653..c6a8ffa 100644 --- src/test/java/org/apache/hadoop/hbase/PerformanceEvaluation.java +++ src/test/java/org/apache/hadoop/hbase/PerformanceEvaluation.java @@ -466,29 +466,26 @@ public class PerformanceEvaluation { */ private boolean checkTable(HBaseAdmin admin) throws IOException { HTableDescriptor tableDescriptor = getTableDescriptor(); - if (this.presplitRegions > 0) { - // presplit requested - if (admin.tableExists(tableDescriptor.getName())) { - admin.disableTable(tableDescriptor.getName()); - admin.deleteTable(tableDescriptor.getName()); - } - - byte[][] splits = getSplits(); - for (int i=0; i < splits.length; i++) { - LOG.debug(" split " + i + ": " + Bytes.toStringBinary(splits[i])); - } - admin.createTable(tableDescriptor, splits); - LOG.info ("Table created with " + this.presplitRegions + " splits"); - } - else { - boolean tableExists = admin.tableExists(tableDescriptor.getName()); - if (!tableExists) { + boolean tableExists = admin.tableExists(tableDescriptor.getName()); + if (!tableExists) { + if (this.presplitRegions > 0) { + // presplit requested + byte[][] splits = getSplits(); + for (int i = 0; i < splits.length; i++) { + LOG.debug(" split " + i + ": " + Bytes.toStringBinary(splits[i])); + } + admin.createTable(tableDescriptor, splits); + LOG.info("Table created with " + this.presplitRegions + " splits"); + } else { admin.createTable(tableDescriptor); LOG.info("Table " + tableDescriptor + " created"); } + } else if (this.presplitRegions > 0) { + // presplit option has no effect if table already exists + LOG.warn("Table '" + tableDescriptor.getNameAsString() + + "' already exists. --presplit option did not take effect"); } - boolean tableExists = admin.tableExists(tableDescriptor.getName()); - return tableExists; + return admin.tableExists(tableDescriptor.getName()); } protected HTableDescriptor getTableDescriptor() {