Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-28241

The snapshot operation encountered an NPE and failed.

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 3.0.0-beta-1
    • 2.6.0, 3.0.0-beta-1
    • proc-v2, snapshots
    • None
    • Reviewed

    Description

      Executing a merge region before the snapshot operation is completed will result in an NPE error for the snapshot operation and cause it to fail

      Triggering logic

      1. Execute the snapshot command.
      2. Merge regions before the snapshot is completed.
      3. After the merge is completed, the two parent regions will be cleaned up.
      4. An NPE will be reported when the snapshot operation is performed on that parent region. The log is as follow:
      2023-11-20T23:26:07,061 ERROR [PEWorker-13] procedure2.ProcedureExecutor: CODE-BUG: Uncaught runtime exception: pid=238720, ppid=238714, state=RUNNABLE, hasLock=true; SnapshotRegionProcedure c47539f1d6032ba1a037f5279c22baa0
      java.lang.NullPointerException: null
              at org.apache.hadoop.hbase.master.procedure.SnapshotRegionProcedure.execute(SnapshotRegionProcedure.java:160) ~[hbase-server-3.0.0-beta-1-SNAPSHOT.jar:3.0.0-beta-1-SNAPSHOT]
              at org.apache.hadoop.hbase.master.procedure.SnapshotRegionProcedure.execute(SnapshotRegionProcedure.java:58) ~[hbase-server-3.0.0-beta-1-SNAPSHOT.jar:3.0.0-beta-1-SNAPSHOT]
              at org.apache.hadoop.hbase.procedure2.Procedure.doExecute(Procedure.java:921) ~[hbase-procedure-3.0.0-beta-1-SNAPSHOT.jar:3.0.0-beta-1-SNAPSHOT]
              at org.apache.hadoop.hbase.procedure2.ProcedureExecutor.execProcedure(ProcedureExecutor.java:1649) ~[hbase-procedure-3.0.0-beta-1-SNAPSHOT.jar:3.0.0-beta-1-SNAPSHOT]
              at org.apache.hadoop.hbase.procedure2.ProcedureExecutor.executeProcedure(ProcedureExecutor.java:1395) ~[hbase-procedure-3.0.0-beta-1-SNAPSHOT.jar:3.0.0-beta-1-SNAPSHOT]
              at org.apache.hadoop.hbase.procedure2.ProcedureExecutor.access$1000(ProcedureExecutor.java:75) ~[hbase-procedure-3.0.0-beta-1-SNAPSHOT.jar:3.0.0-beta-1-SNAPSHOT]
              at org.apache.hadoop.hbase.procedure2.ProcedureExecutor$WorkerThread.runProcedure(ProcedureExecutor.java:1961) ~[hbase-procedure-3.0.0-beta-1-SNAPSHOT.jar:3.0.0-beta-1-SNAPSHOT]
              at org.apache.hadoop.hbase.trace.TraceUtil.trace(TraceUtil.java:216) ~[hbase-common-3.0.0-beta-1-SNAPSHOT.jar:3.0.0-beta-1-SNAPSHOT]
              at org.apache.hadoop.hbase.procedure2.ProcedureExecutor$WorkerThread.run(ProcedureExecutor.java:1988) ~[hbase-procedure-3.0.0-beta-1-SNAPSHOT.jar:3.0.0-beta-1-SNAPSHOT] 

      Attachments

        Issue Links

          Activity

            People

              luoen Haiping lv
              luoen Haiping lv
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: