Mark Christiaens created HBASE-16737:
----------------------------------------

             Summary: NPE during close of RegionScanner
                 Key: HBASE-16737
                 URL: https://issues.apache.org/jira/browse/HBASE-16737
             Project: HBase
          Issue Type: Bug
    Affects Versions: 1.0.0
            Reporter: Mark Christiaens


We encountered the following stack trace during high load:
{noformat}
Unexpected throwable object 
java.lang.NullPointerException
        at 
org.apache.hadoop.hbase.CellComparator.compareRows(CellComparator.java:186)
        at 
org.apache.hadoop.hbase.CellComparator.compare(CellComparator.java:63)
        at 
org.apache.hadoop.hbase.KeyValue$KVComparator.compare(KeyValue.java:2021)
        at 
org.apache.hadoop.hbase.regionserver.KeyValueHeap$KVScannerComparator.compare(KeyValueHeap.java:202)
        at 
org.apache.hadoop.hbase.regionserver.KeyValueHeap$KVScannerComparator.compare(KeyValueHeap.java:178)
        at 
org.apache.hadoop.hbase.regionserver.KeyValueHeap$KVScannerComparator.compare(KeyValueHeap.java:168)
        at 
java.util.PriorityQueue.siftDownUsingComparator(PriorityQueue.java:719)
        at java.util.PriorityQueue.siftDown(PriorityQueue.java:687)
        at java.util.PriorityQueue.poll(PriorityQueue.java:595)
        at 
org.apache.hadoop.hbase.regionserver.KeyValueHeap.close(KeyValueHeap.java:218)
        at 
org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.close(HRegion.java:5608)
        at 
org.apache.phoenix.coprocessor.BaseScannerRegionObserver$2.close(BaseScannerRegionObserver.java:279)
        at 
org.apache.phoenix.coprocessor.BaseScannerRegionObserver$1.close(BaseScannerRegionObserver.java:186)
        at 
org.apache.hadoop.hbase.regionserver.RSRpcServices.scan(RSRpcServices.java:2378)
        at 
org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:32205)
        at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2034)
        at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:107)
        at 
org.apache.hadoop.hbase.ipc.RpcExecutor.consumerLoop(RpcExecutor.java:130)
        at org.apache.hadoop.hbase.ipc.RpcExecutor$1.run(RpcExecutor.java:107)
        at java.lang.Thread.run(Thread.java:745)
{noformat}

What I suspect is happening is that the {{RegionScannerImpl}} is being closed 
while the scanner's lease is expired.  During this close, the underlying 
{{KeyValueHeap}} is being polled.  the {{heap}} tries to read data from 
{{KeyValueScanners}} that then return {{null}} which causes the crash.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to