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

StealJobQueue should call super() to init the PriorityBlockingQueue

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 2.0.0-alpha-3
    • 2.0.0-alpha-4, 2.0.0
    • None
    • None
    • Reviewed

    Description

      ERROR: java.io.IOException: org.apache.hadoop.hbase.regionserver.CompactSplit$CompactionRunner cannot be cast to java.lang.Comparable
              at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:465)
              at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:133)
              at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:278)
              at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:258)
      Caused by: java.lang.ClassCastException: org.apache.hadoop.hbase.regionserver.CompactSplit$CompactionRunner cannot be cast to java.lang.Comparable
              at java.util.concurrent.PriorityBlockingQueue.siftUpComparable(PriorityBlockingQueue.java:357)
              at java.util.concurrent.PriorityBlockingQueue.offer(PriorityBlockingQueue.java:489)
              at org.apache.hadoop.hbase.util.StealJobQueue.offer(StealJobQueue.java:103)
              at java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:1361)
              at org.apache.hadoop.hbase.regionserver.CompactSplit.requestCompactionInternal(CompactSplit.java:291)
              at org.apache.hadoop.hbase.regionserver.CompactSplit.requestCompactionInternal(CompactSplit.java:248)
              at org.apache.hadoop.hbase.regionserver.CompactSplit.requestCompaction(CompactSplit.java:236)
              at org.apache.hadoop.hbase.regionserver.RSRpcServices.compactRegion(RSRpcServices.java:1591)
              at org.apache.hadoop.hbase.shaded.protobuf.generated.AdminProtos$AdminService$2.callBlockingMethod(AdminProtos.java:26856)
              at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:406)
      

      Seems to be a simple miss. StealJobQueue does not init the PriorityBlockingQueue that it extends and so major compaction/compaction just fails with the above stack trace.

      Attachments

        1. HBASE-18888.patch
          1 kB
          ramkrishna.s.vasudevan

        Activity

          People

            ram_krish ramkrishna.s.vasudevan
            ram_krish ramkrishna.s.vasudevan
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: