hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Elliott Clark (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-15047) Try spin lock for MVCC completion
Date Tue, 29 Dec 2015 23:43:49 GMT

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

Elliott Clark commented on HBASE-15047:

I'm on a mission to remove locks. Every lock we have is a place for contention and long wait
times. The jury is still out on this instance being worth it though.

bq.who says the currently scheduled thread is next in line
That shouldn't matter as long as someone is next. They should all be waiting.

bq.what is to prevent all CPUs being here spinning with no thread free to make forward progess
Yeah that's the possible downside. That you have so many threads using cpu that you can't
get any io done. If needed we can add a sleep if the spin has been going too long. However
I want to try these things before adding more complexity.

> Try spin lock for MVCC completion
> ---------------------------------
>                 Key: HBASE-15047
>                 URL: https://issues.apache.org/jira/browse/HBASE-15047
>             Project: HBase
>          Issue Type: Bug
>            Reporter: Elliott Clark
>            Assignee: Elliott Clark
>         Attachments: HBASE-15047.patch
> Waits/Notify is very very expensive since it can cost a thread scheduling. There should
only ever be a few threads ( < Num Cores ) running. So it should be possible to spin and
use compare and swap to update the read point.

This message was sent by Atlassian JIRA

View raw message