stack updated HBASE-19978:
      Resolution: Fixed
    Release Note: Completes keep-alive logic and then enables it; 
ProcedureExecutor Workers will spin up more threads when need settling back to 
the core count after the burst in demand has passed. Default keep-alive is one 
minute. Default core-count is CPUs/4 or 16, which ever is greater. Maximum is 
an arbitrary core-count * 10 (a limit that should never be hit and if it is, 
there is something else very wrong).
          Status: Resolved  (was: Patch Available)

Tried the patch. Watched the nice new test in operation watching spin up in 
threads as demand and then PE workers settling back to the core count as the 
test winds down.

I pushed to see how it does with our last few flakies. One change is that I set 
the max at 10* instead of 4* core-count.

Pushed to branch-2 and master. Thanks for nice work [~Apache9] where you are 
trying to make it so we can ship a hbase2 sooner rather than later sir.

> The keepalive logic is incomplete in ProcedureExecutor
> ------------------------------------------------------
>                 Key: HBASE-19978
>                 URL: https://issues.apache.org/jira/browse/HBASE-19978
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: Duo Zhang
>            Assignee: Duo Zhang
>            Priority: Major
>             Fix For: 2.0.0-beta-2
>         Attachments: HBASE-19978-v1.patch, HBASE-19978-v2.patch, 
> HBASE-19978.patch
> The worker thread will just exit after keep alive time, and we never add it 
> back. The only way to add it back is through the stuck checker, this is not 
> correct. Here we should start new worker thread if it is under the core pool 
> size and there are pending procedures.
> For now the default keep alive time is Long.MAX_VALUE which means no timeout 
> so no problem, but we do allow users to set it so we need to fix it.

This message was sent by Atlassian JIRA

Reply via email to