hbase-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Josh Elser <els...@apache.org>
Subject Re: HBase client spent most time in ThreadPoolExecutor
Date Tue, 26 Feb 2019 16:32:07 GMT
Minwoo,

You have found an idle thread in the threadpool that is waiting for 
work. This is not the source of your slowness. The thread is polling the 
internal queue of work, waiting for the next "unit" of something to do.

You should include threads like these from your analysis.

On 2/26/19 8:32 AM, Kang Minwoo wrote:
> Hello Users,
> 
> I have a question.
> 
> My client complains to me, HBase scan spent too much time.
> So I started to debug.
> 
> I profiled the HBase Client Application using hprof.
> The App spent the most time in below stack trace.
> 
> ----
> java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:Unknown line)
> java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:Unknown
line)
> java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:Unknown line)
> java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:Unknown line)
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:Unknown line)
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:Unknown line)
> java.lang.Thread.run(Thread.java:Unknown line)
> ---
> 
> ---
> org.apache.hadoop.hbase.ipc.RpcClientImpl$Connection.waitForWork(RpcClientImpl.java:Unknown
line)
> org.apache.hadoop.hbase.ipc.RpcClientImpl$Connection.run(RpcClientImpl.java:Unknown line)
> ---
> 
> they spent 92% of total time.
> 
> I don't understand why they spent a lot of time.
> Do you have any idea?
> 
> Best regards,
> Minwoo Kang
> 

Mime
View raw message