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

Hiroshi Ikeda commented on HBASE-16023:
---------------------------------------

Sorry my lack of explanation.

An concrete example of the race condition:

1. Worker checks no task.
2. Reader checks no ready handler.
3. Worker pushes itself as a ready handler and waits on the semaphore.
4. Reader queues a task to the queue, without directly passing it to the ready 
handler nor releasing the semaphore.

(1,3) and (2,4) should be exclusively executed. That depends on luck, and it 
might be not severe(?)


> Fastpath for the FIFO rpcscheduler
> ----------------------------------
>
>                 Key: HBASE-16023
>                 URL: https://issues.apache.org/jira/browse/HBASE-16023
>             Project: HBase
>          Issue Type: Sub-task
>          Components: Performance, rpc
>    Affects Versions: 2.0.0, 1.3.0
>            Reporter: stack
>            Assignee: stack
>             Fix For: 2.0.0, 1.3.0
>
>         Attachments: HBASE-16023.branch-1.001.patch, 
> hits.nofifo.fifoplusfp.fifownofp.hacks.png
>
>
> This is an idea copied from kudu where we skip queuing a request if there is 
> a handler ready to go; we just do a direct handoff from reader to handler.
> Makes for close to a %20 improvement in random read workloadc testing moving 
> the bottleneck to HBASE-15716 and to returning the results.



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

Reply via email to