[
https://issues.apache.org/jira/browse/HBASE-6018?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13277581#comment-13277581
]
Jonathan Hsieh commented on HBASE-6018:
---------------------------------------
I'm convinced that SynchronousQueue was just wrong and the failure was
"expected behavior". I'm a little confused by your statement Lars; queues are
just used if there are more tasks than max concurrent enough threads in the
pool.
See java doc here
http://docs.oracle.com/javase/1.5.0/docs/api/java/util/concurrent/ThreadPoolExecutor.html
{quote}
Queuing
Any BlockingQueue may be used to transfer and hold submitted tasks. The use of
this queue interacts with pool sizing:
If fewer than corePoolSize threads are running, the Executor always prefers
adding a new thread rather than queuing.
If corePoolSize or more threads are running, the Executor always prefers
queuing a request rather than adding a new thread.
If a request cannot be queued, a new thread is created unless this would exceed
maximumPoolSize, in which case, the task will be rejected.
{quote}
> hbck fails with a RejectedExecutionException
> --------------------------------------------
>
> Key: HBASE-6018
> URL: https://issues.apache.org/jira/browse/HBASE-6018
> Project: HBase
> Issue Type: Bug
> Affects Versions: 0.92.1, 0.94.0
> Reporter: Jonathan Hsieh
> Assignee: Jonathan Hsieh
> Attachments: hbase-6018.patch
>
>
> On a long running job 0.94.0rc3 cluster, we get to a point where hbck
> consistently encounters this error and fails:
> {code}
> Exception in thread "main" java.util.concurrent.RejectedExecutionException
> at
> java.util.concurrent.ThreadPoolExecutor$AbortPolicy.rejectedExecution(ThreadPoolExecutor.java:1768)
> at
> java.util.concurrent.ThreadPoolExecutor.reject(ThreadPoolExecutor.java:767)
> at
> java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:658)
> at
> org.apache.hadoop.hbase.util.HBaseFsck.loadHdfsRegionInfos(HBaseFsck.java:633)
> at
> org.apache.hadoop.hbase.util.HBaseFsck.onlineConsistencyRepair(HBaseFsck.java:354)
> at org.apache.hadoop.hbase.util.HBaseFsck.onlineHbck(HBaseFsck.java:382)
> at org.apache.hadoop.hbase.util.HBaseFsck.main(HBaseFsck.java:3120)
> {code}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira