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

Duo Zhang resolved HBASE-25826.
-------------------------------
    Fix Version/s: 2.5.0
                   3.0.0-alpha-1
     Release Note: 
Narrow down the public facing API for LoadBalancer by removing balanceTable and 
setConf methods.
Redesigned the initilization sequence to simplify the initialization code. Now 
all the setters are just 'setter', all the initialization work are moved to 
initialize method.
Rename setClusterMetrics to updateClusterMetrics, as it will be called 
periodically while other setters will only be called once before initialization.
Add javadoc for LoadBalancer class to mention how to do synchronization on 
implementation classes.
       Resolution: Fixed

All sub tasks are done.

Resolve.

> Revisit the synchronization of balancer implementation
> ------------------------------------------------------
>
>                 Key: HBASE-25826
>                 URL: https://issues.apache.org/jira/browse/HBASE-25826
>             Project: HBase
>          Issue Type: Umbrella
>          Components: Balancer
>            Reporter: Duo Zhang
>            Assignee: Duo Zhang
>            Priority: Major
>             Fix For: 3.0.0-alpha-1, 2.5.0
>
>
> In StochasticLoadBalancer, some methods are synchronized, for example, 
> setClusterMetrics, setConf, balanceTable, etc.
> What I can see is that, we have ConfigurationObserver support, so we need to 
> make sure that the configuration updating does not effect the balance 
> operation, so we need synchronization here. But do we support two balance 
> operations at the same time? And what about other balancer implementations?
> I think we need to make the synchronization more clearer.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to