hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "stack (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-10294) Some synchronization on ServerManager#onlineServers can be removed
Date Tue, 14 Jan 2014 18:57:58 GMT

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

stack commented on HBASE-10294:

bq. The sync elsewhere is for iteration AND modification...

Yeah.  And while it is going on, you couldn't get a view on the online servers Map (before
this patch was applied).

Feel free to open another issue if you would like to dig in on SM online server Maps to come
up w/ a wholesome story around synchronization and online server Map views.  This issue is
spoiled and has a -1 against the patch applied so would suggest you not continue here.

> Some synchronization on ServerManager#onlineServers can be removed
> ------------------------------------------------------------------
>                 Key: HBASE-10294
>                 URL: https://issues.apache.org/jira/browse/HBASE-10294
>             Project: HBase
>          Issue Type: Task
>            Reporter: Ted Yu
>            Assignee: Ted Yu
>            Priority: Minor
>             Fix For: 0.99.0
>         Attachments: 10294-v1.txt
> ServerManager#onlineServers is a ConcurrentHashMap
> Yet I found that some accesses to it are synchronized and unnecessary.
> Here is one example:
> {code}
>   public Map<ServerName, ServerLoad> getOnlineServers() {
>     // Presumption is that iterating the returned Map is OK.
>     synchronized (this.onlineServers) {
>       return Collections.unmodifiableMap(this.onlineServers);
> {code}
> Note: not all accesses to ServerManager#onlineServers are synchronized.

This message was sent by Atlassian JIRA

View raw message