Github user jiajunwang commented on a diff in the pull request:
https://github.com/apache/helix/pull/145#discussion_r174326382
--- Diff:
helix-core/src/main/java/org/apache/helix/util/WeightAwareRebalanceUtil.java ---
@@ -0,0 +1,141 @@
+package org.apache.helix.util;
+
+import org.apache.helix.HelixException;
+import org.apache.helix.ZNRecord;
+import org.apache.helix.api.config.RebalanceConfig;
+import
org.apache.helix.api.rebalancer.constraint.AbstractRebalanceHardConstraint;
+import
org.apache.helix.api.rebalancer.constraint.AbstractRebalanceSoftConstraint;
+import org.apache.helix.controller.common.PartitionStateMap;
+import org.apache.helix.controller.common.ResourcesStateMap;
+import
org.apache.helix.controller.rebalancer.strategy.ConstraintRebalanceStrategy;
+import org.apache.helix.controller.stages.ClusterDataCache;
+import org.apache.helix.model.*;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * A rebalance tool that generate an resource partition assignment based
on the input.
+ * Note the assignment won't be automatically applied to the cluster.
Applications are supposed to
+ * apply the change.
+ */
--- End diff --
Good suggestion. Will add it.
---