[ 
https://issues.apache.org/jira/browse/HBASE-14478?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14907243#comment-14907243
 ] 

Mikhail Antonov commented on HBASE-14478:
-----------------------------------------

Sounds good to me.

bq. executor.allowCoreThreadTimeOut(true)

Anything that helps to keep the number of running threads under control is good 
:)

> A ThreadPoolExecutor with a LinkedBlockingQueue cannot execute tasks 
> concurrently
> ---------------------------------------------------------------------------------
>
>                 Key: HBASE-14478
>                 URL: https://issues.apache.org/jira/browse/HBASE-14478
>             Project: HBase
>          Issue Type: Improvement
>          Components: regionserver
>    Affects Versions: 2.0.0
>            Reporter: Jingcheng Du
>            Assignee: Jingcheng Du
>             Fix For: 2.0.0
>
>         Attachments: HBASE-14478.patch
>
>
> In FlushTableSubprocedurePool and SnapshotSubprocedurePool, the 
> ThreadPoolExecutor with a LinkedBlockingQueue is used, and it's corePoolSize 
> and maximumPoolSize are not the same, which can cause the if the number of 
> tasks is larger than corePoolSize, those tasks cannot be executed until old 
> tasks are finished and the number of running tasks is less than corePoolSize. 
> We should use the same value for the corePoolSize and maximumPoolSize if the 
> LinkedBlockingQueue is used.



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

Reply via email to