Hi,

In the ClusterMonitor.java, before invoking the scaler rule, the code checks 
certain parameters (see code snipplet below)  before invoking the rule - when 
and where in the code are these flags (rifReset || memoryConsumptionReset || 
loadAverageReset) set to true ?

Thanks

Martin



if(rifReset || memoryConsumptionReset || loadAverageReset){

                scaleCheckKnowledgeSession.setGlobal("clusterId", clusterId);
                //scaleCheckKnowledgeSession.setGlobal("deploymentPolicy", 
deploymentPolicy);
                scaleCheckKnowledgeSession.setGlobal("autoscalePolicy", 
autoscalePolicy);
                scaleCheckKnowledgeSession.setGlobal("rifReset", rifReset);
                scaleCheckKnowledgeSession.setGlobal("mcReset", 
memoryConsumptionReset);
                scaleCheckKnowledgeSession.setGlobal("laReset", 
loadAverageReset);
                scaleCheckKnowledgeSession.setGlobal("lbRef", lbReferenceType);

                if (log.isDebugEnabled()) {
                    log.debug(String.format("Running scale check for network 
partition %s ", networkPartitionContext.getId()));
                }

                scaleCheckFactHandle = 
AutoscalerRuleEvaluator.evaluateScaleCheck(scaleCheckKnowledgeSession
                        , scaleCheckFactHandle, networkPartitionContext);

                networkPartitionContext.setRifReset(false);
                networkPartitionContext.setMemoryConsumptionReset(false);
                networkPartitionContext.setLoadAverageReset(false);
            } else if(log.isDebugEnabled()){
                    log.debug(String.format("Scale rule will not run since the 
LB statistics have not received before this " +
                            "cycle for network partition %s", 
networkPartitionContext.getId()) );
            }

Reply via email to