diff --git hbase-server/src/main/java/org/apache/hadoop/hbase/util/HBaseFsck.java hbase-server/src/main/java/org/apache/hadoop/hbase/util/HBaseFsck.java index 96bd0f7..615a0f5 100644 --- hbase-server/src/main/java/org/apache/hadoop/hbase/util/HBaseFsck.java +++ hbase-server/src/main/java/org/apache/hadoop/hbase/util/HBaseFsck.java @@ -331,7 +331,7 @@ public class HBaseFsck extends Configured implements Closeable { errors = getErrorReporter(getConf()); this.executor = exec; } - + private class FileLockCallable implements Callable { @Override public FSDataOutputStream call() throws IOException { @@ -1716,6 +1716,15 @@ public class HBaseFsck extends Configured implements Closeable { f.get(); } catch(ExecutionException e1) { LOG.warn("Could not check region consistency " , e1.getCause()); + if (e1.getCause() instanceof IOException) { + throw (IOException)e1.getCause(); + } else if (e1.getCause() instanceof KeeperException) { + throw (KeeperException)e1.getCause(); + } else if (e1.getCause() instanceof InterruptedException) { + throw (InterruptedException)e1.getCause(); + } else { + throw new IOException(e1.getCause()); + } } } boolean prevHdfsCheck = shouldCheckHdfs();