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

stack commented on HBASE-6778:
------------------------------

Sounds great [~jonathan.lawlor]  

bq. Thus the core pool size could be set to a small initial value, and if we 
recognize that Chores are missing their scheduled start times, we could 
increase the core pool size to a maximum of however many active chores there 
are.

If a thread is taking longer than its period, we won't schedule another 
instance of the same Chore type? In other words, is there anything to prevent 
the pool being filled with Chores all of the same type if taking longer their 
period?

Can we have it so pool has a small minimum and a max that allows all chores run 
concurrently if necessary... then when chore is done, threads die off till we 
are back to the minimum again?  That way, for those threads with a long period 
between runs.... say 5 minutes... we create a thread each time?

Good stuff [~jonathan.lawlor]



> Deprecate Chore; its a thread per task when we should have one thread to do 
> all tasks
> -------------------------------------------------------------------------------------
>
>                 Key: HBASE-6778
>                 URL: https://issues.apache.org/jira/browse/HBASE-6778
>             Project: HBase
>          Issue Type: Bug
>            Reporter: stack
>            Assignee: Jonathan Lawlor
>         Attachments: thread_dump_HMaster.local.out
>
>
> Should use something like ScheduledThreadPoolExecutor instead (Elliott said 
> this first I think; J-D said something similar just now).



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

Reply via email to