bypass (Hbck2)
Skips one or more procedure PIDs (procedure IDs) directly to their finish state.
Use this command only in exceptional cases. Bypassing procedures can leave entities in an inconsistent state and may require manual cleanup or even a Master restart.
Command
hbase hbck -j <path to Hbck2 Jar> bypass [OPTIONS] [<PID>...|-i <INPUT_FILE>...]Parameters
<path-to-hbck2-jar>:The full path to the Hbck2 JAR file.<PID>:One or more procedure IDs to bypass.<INPUT_FILE>:One or more files that contain PIDs, one PID per line.
Options
| Option | Description |
|---|---|
-o, --override | Bypass the procedure even if it is currently running or stuck. |
-r, --recursive | Bypass a parent procedure and all of its child procedures. This option is slow, resource-intensive, and risky. Use it only when necessary. It does not guarantee success. |
-w, --lockWait <milliseconds> | The number of milliseconds to wait for acquiring locks for the procedure.
Default value: 1 millisecond. |
-i, --inputFiles <file1> [<file2>...] | Use one or more input files containing PIDs (one PID per line). |
-b, --batchSize <number> | The number of procedures to process in a single batch.
Use this option if you are bypassing a large number of procedures to reduce the risk of CallTimeoutException.
Default value: -1 (no batching). |
Description
Use the bypass command when a procedure is stuck and blocking other operations.
If the target procedure has active child procedures, bypass usually fails unless you specify
-r(recursive).Even with
-r, the operation might not succeed, and it can be expensive in terms of time and resources.Bypassing can leave the system in an inconsistent state. You might need to:
- Manually repair affected entities, or
- Restart the Master.
Examples
- Bypass a single procedure with PID 12345:
hbase hbck -j <path-to-hbck2-jar> bypass 12345- Bypass procedures listed in
fileName1andfileName2in batches of 500:
hbase hbck -j <path-to-hbck2-jar> bypass -i fileName1 fileName2 -b 500Was this page helpful?