[
https://issues.apache.org/jira/browse/HBASE-10294?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13870998#comment-13870998
]
Sergey Shelukhin commented on HBASE-10294:
------------------------------------------
Well, if the problem needs to be fixed elsewhere too then we need to know what
the problem is... I don't think there's a problem. The sync elsewhere is for
iteration AND modification, because in these places one depends on the other
to be consistent.
If you don't think separate JIRA is justified we can make an addendum for the
recent original jira.
> 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
(v6.1.5#6160)