You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@helix.apache.org by GitBox <gi...@apache.org> on 2019/10/23 05:37:47 UTC

[GitHub] [helix] jiajunwang commented on a change in pull request #519: Refine the rebalance scope calculating logic in the WAGED rebalancer.

jiajunwang commented on a change in pull request #519: Refine the rebalance scope calculating logic in the WAGED rebalancer.
URL: https://github.com/apache/helix/pull/519#discussion_r337856760
 
 

 ##########
 File path: helix-core/src/main/java/org/apache/helix/controller/changedetector/ResourceChangeSnapshot.java
 ##########
 @@ -72,6 +73,17 @@
     _changedTypes = new HashSet<>(dataProvider.getRefreshedChangeTypes());
     _instanceConfigMap = new HashMap<>(dataProvider.getInstanceConfigMap());
     _idealStateMap = new HashMap<>(dataProvider.getIdealStates());
+    for (String resourceName : _idealStateMap.keySet()) {
+      IdealState orgIdealState = _idealStateMap.get(resourceName);
+      if (orgIdealState.getRebalanceMode().equals(IdealState.RebalanceMode.FULL_AUTO)) {
+        IdealState trimmedIdealState = new IdealState(orgIdealState.getRecord());
+        // For FullAuto resources, map fields and list fields in the IdealStates is not user's input.
+        // So there is no need to detect any change in these 2 scopes.
+        trimmedIdealState.getRecord().setListFields(Collections.emptyMap());
+        trimmedIdealState.getRecord().setMapFields(Collections.emptyMap());
+        _idealStateMap.put(resourceName, trimmedIdealState);
 
 Review comment:
   I think this is a generic logic. Do you have any example that we may need to check map/list fields change when the resource is fullauto? High-levelly, we don't need to check any change that is done by the controller.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@helix.apache.org
For additional commands, e-mail: reviews-help@helix.apache.org