Hi All, 


HBase client waits indefinitely for performing any operation. On taking, jstack 
we  saw all the threads waiting on BoundedCompletionService.take() call. The 
hconnection pool's stack is 



hconnection-0x58ca857d-shared--pool1-t96" daemon prio=10 tid=0x00007f29d4510800 
nid=0x84d0 waiting on condition [0x00007f2568dc0000] 

   java.lang.Thread.State: WAITING (parking) 

    at sun.misc.Unsafe.park(Native Method) 

    - parking to wait for  <0x000000060cbecf50> (a 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) 

    at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) 

    at 
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
 

    at 
java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:374) 

    at 
org.apache.hadoop.hbase.util.BoundedCompletionService.take(BoundedCompletionService.java:74)
 

    at 
org.apache.hadoop.hbase.client.ScannerCallableWithReplicas.call(ScannerCallableWithReplicas.java:174)
 

    at 
org.apache.hadoop.hbase.client.ScannerCallableWithReplicas.call(ScannerCallableWithReplicas.java:56)
 

    at 
org.apache.hadoop.hbase.client.RpcRetryingCaller.callWithoutRetries(RpcRetryingCaller.java:200)
 

    at 
org.apache.hadoop.hbase.client.ClientSmallReversedScanner.next(ClientSmallReversedScanner.java:145)
 

    at 
org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation.locateRegionInMeta(ConnectionManager.java:1200)

    at 
org.apache.hadoop.hbase.client.ConnectionManager$HConnectionImplementation.locateRegion(ConnectionManager.java:1109)
 

    at 
org.apache.hadoop.hbase.client.AsyncProcess$AsyncRequestFutureImpl.findAllLocationsOrFail(AsyncProcess.java:916)
 

    at 
org.apache.hadoop.hbase.client.AsyncProcess$AsyncRequestFutureImpl.groupAndSendMultiAction(AsyncProcess.java:833)
 

    at 
org.apache.hadoop.hbase.client.AsyncProcess$AsyncRequestFutureImpl.resubmit(AsyncProcess.java:1156)
 

    at 
org.apache.hadoop.hbase.client.AsyncProcess$AsyncRequestFutureImpl.receiveMultiAction(AsyncProcess.java:1296)
 

    at 
org.apache.hadoop.hbase.client.AsyncProcess$AsyncRequestFutureImpl.access$1200(AsyncProcess.java:574)
 

    at 
org.apache.hadoop.hbase.client.AsyncProcess$AsyncRequestFutureImpl$SingleServerRequestRunnable.run(AsyncProcess.java:716)
 

    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) 

    at java.util.concurrent.FutureTask.run(FutureTask.java:262) 

    at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 

    at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 

    at java.lang.Thread.run(Thread.java:745)



Our client configurations are as follows:

hbase.hconnection.threads.core - 1

hbase.hconnection.threads.max - 10




Regards,

Meeran.


















Reply via email to