kaisun2000 commented on a change in pull request #1532:
URL: https://github.com/apache/helix/pull/1532#discussion_r541482632
##########
File path:
helix-core/src/main/java/org/apache/helix/controller/stages/IntermediateStateCalcStage.java
##########
@@ -33,182 +32,107 @@
import org.apache.helix.HelixException;
import org.apache.helix.HelixManager;
import org.apache.helix.api.config.StateTransitionThrottleConfig;
-import org.apache.helix.api.config.StateTransitionThrottleConfig.RebalanceType;
import org.apache.helix.controller.LogUtil;
import org.apache.helix.controller.common.PartitionStateMap;
+import org.apache.helix.controller.common.ResourcesStateMap;
import
org.apache.helix.controller.dataproviders.ResourceControllerDataProvider;
import org.apache.helix.controller.pipeline.AbstractBaseStage;
import org.apache.helix.controller.pipeline.StageException;
import org.apache.helix.model.BuiltInStateModelDefinitions;
import org.apache.helix.model.ClusterConfig;
import org.apache.helix.model.IdealState;
import org.apache.helix.model.MaintenanceSignal;
+import org.apache.helix.model.Message;
import org.apache.helix.model.Partition;
import org.apache.helix.model.Resource;
import org.apache.helix.model.StateModelDefinition;
-import org.apache.helix.monitoring.mbeans.ClusterStatusMonitor;
-import org.apache.helix.monitoring.mbeans.ResourceMonitor;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-/**
- * For partition compute the Intermediate State (instance,state) pair based on
the BestPossibleState
- * and CurrentState, with all constraints applied (such as state transition
throttling).
- */
-public class IntermediateStateCalcStage extends AbstractBaseStage {
+
+public class PerReplicaThrottleStage extends AbstractBaseStage {
private static final Logger logger =
- LoggerFactory.getLogger(IntermediateStateCalcStage.class.getName());
+ LoggerFactory.getLogger(PerReplicaThrottleStage.class.getName());
+
+ private boolean isEmitThrottledMsg = false;
+
+ public PerReplicaThrottleStage() {
+ this(false);
+ }
+
+ public PerReplicaThrottleStage(boolean enableEmitThrottledMsg) {
+ isEmitThrottledMsg = enableEmitThrottledMsg;
Review comment:
Feel free to skip the IntermediateStateCalcStage. Previously JK asked to
compare IntermediateStateCalcStage with PerReplicaThrottleStage as it is deemed
easier to look at the difference. But the new code can be done in a way to
change just a few lines from IntermediateStateCalcStage as there new code is
written from scratch with different input and output even the logic is similar
----------------------------------------------------------------
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:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]