HBASE-21335 Change the default wait time of HBCK2 tool

Signed-off-by: Michael Stack <stack@apache.org>
diff --git a/hbase-hbck2/src/main/java/org/apache/hbase/HBCK2.java b/hbase-hbck2/src/main/java/org/apache/hbase/HBCK2.java
index 64882aa..24717b8 100644
--- a/hbase-hbck2/src/main/java/org/apache/hbase/HBCK2.java
+++ b/hbase-hbck2/src/main/java/org/apache/hbase/HBCK2.java
@@ -80,6 +80,10 @@
   private Configuration conf;
   private static final String TWO_POINT_ONE = "2.1.0";
   private static final String MININUM_VERSION = "2.0.3";
+  /**
+   * Wait 1ms on lock by default.
+   */
+  private static final long DEFAULT_LOCK_WAIT = 1;
 
   /**
    * Check for HBCK support.
@@ -168,7 +172,7 @@
     options.addOption(override);
     Option recursive = Option.builder("r").longOpt("recursive").build();
     options.addOption(recursive);
-    Option wait = Option.builder("w").longOpt("waitTime").hasArg().type(Integer.class).build();
+    Option wait = Option.builder("w").longOpt("lockWait").hasArg().type(Integer.class).build();
     options.addOption(wait);
     // Parse command-line.
     CommandLineParser parser = new DefaultParser();
@@ -179,10 +183,9 @@
       usage(options, e.getMessage());
       return null;
     }
-    long waitTime = 0;
+    long lockWait = DEFAULT_LOCK_WAIT;
     if (commandLine.hasOption(wait.getOpt())) {
-      waitTime = Integer.valueOf(commandLine.getOptionValue(wait.getOpt()));
-      waitTime *= 1000; // Because time is in seconds.
+      lockWait = Integer.valueOf(commandLine.getOptionValue(wait.getOpt()));
     }
     String[] pidStrs = commandLine.getArgs();
     if (pidStrs == null || pidStrs.length <= 0) {
@@ -194,7 +197,7 @@
     List<Long> pids = Arrays.stream(pidStrs).map(i -> Long.valueOf(i)).collect(Collectors.toList());
     try (ClusterConnection c = (ClusterConnection) ConnectionFactory.createConnection(getConf())) {
       try (Hbck hbck = c.getHbck()) {
-        return hbck.bypassProcedure(pids, waitTime, overrideFlag, recursiveFlag);
+        return hbck.bypassProcedure(pids, lockWait, overrideFlag, recursiveFlag);
       }
     }
   }
@@ -230,14 +233,15 @@
     writer.println();
     writer.println(" " + BYPASS + " [OPTIONS] <PID>...");
     writer.println("   Options:");
-    writer.println("    -o,--override   interrupt if procedure is running");
+    writer.println("    -o,--override   override if procedure is running/stuck");
     writer.println("    -r,--recursive  bypass parent and its children. SLOW! EXPENSIVE!");
-    writer.println("    -w,--waitTime   seconds to wait on lock before giving up; default=0");
+    writer.println("    -w,--lockWait   milliseconds to wait on lock before giving up; default=1");
     writer.println("   Pass one (or more) procedure 'pid's to skip to procedure finish.");
     writer.println("   Parent of bypassed procedure will also be skipped to the finish.");
     writer.println("   Entities will be left in an inconsistent state and will require");
-    writer.println("   manual fixup. Bypass fails if procedure has children. Add 'recursive'");
-    writer.println("   if all you have is a parent pid to finish parent and children. This");
+    writer.println("   manual fixup. May need Master restart to clear locks still held.");
+    writer.println("   Bypass fails if procedure has children. Add 'recursive' if all");
+    writer.println("   you have is a parent pid to finish parent and children. This");
     writer.println("   is SLOW, and dangerous so use selectively. Does not always work.");
     writer.println();
     writer.println(" " + UNASSIGNS + " <ENCODED_REGIONNAME>...");