You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Mikhail Antonov (JIRA)" <ji...@apache.org> on 2014/09/10 01:25:29 UTC

[jira] [Updated] (HBASE-11290) Unlock RegionStates

     [ https://issues.apache.org/jira/browse/HBASE-11290?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Mikhail Antonov updated HBASE-11290:
------------------------------------
    Attachment: HBASE-11290.draft.patch

Some time ago in the parent jira we started discussion the concurrency around regionstates, so more like to continue this discussion and illustrate some thoughts I'm humbly posting draft in here..For others to look at. This is conservative, and I didn't redo heavy and supposedly rarely called methods to use separate locks-per-invariant, but hope to reduce read contention on get*** calls.

> Unlock RegionStates
> -------------------
>
>                 Key: HBASE-11290
>                 URL: https://issues.apache.org/jira/browse/HBASE-11290
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: Francis Liu
>            Assignee: Francis Liu
>         Attachments: HBASE-11290.draft.patch
>
>
> Even though RegionStates is a highly accessed data structure in HMaster. Most of it's methods are synchronized. Which limits concurrency. Even simply making some of the getters non-synchronized by using concurrent data structures has helped with region assignments. We can go as simple as this approach or create locks per region or a bucket lock per region bucket.



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