You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by la...@apache.org on 2014/12/02 07:22:11 UTC

stratos git commit: Inject cluster instance to min check rule

Repository: stratos
Updated Branches:
  refs/heads/master 4ebb9d899 -> db533ddf3


Inject cluster instance to min check rule


Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/db533ddf
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/db533ddf
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/db533ddf

Branch: refs/heads/master
Commit: db533ddf3d9dc290b058ce0dcca73dc983483950
Parents: 4ebb9d8
Author: Lahiru Sandaruwan <la...@apache.org>
Authored: Tue Dec 2 11:53:33 2014 +0530
Committer: Lahiru Sandaruwan <la...@apache.org>
Committed: Tue Dec 2 11:53:40 2014 +0530

----------------------------------------------------------------------
 .../monitor/cluster/VMClusterMonitor.java       | 98 ++++++++++----------
 1 file changed, 50 insertions(+), 48 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/stratos/blob/db533ddf/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMClusterMonitor.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMClusterMonitor.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMClusterMonitor.java
index d902b7e..2a0e5c8 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMClusterMonitor.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/cluster/VMClusterMonitor.java
@@ -177,10 +177,10 @@ public class VMClusterMonitor extends AbstractClusterMonitor {
                             getClusterInstanceContextMap().values()) {
                         //FIXME to check the status of the instance
                         if (true) {
+                            // store primary members in the partition context
+                            List<String> primaryMemberListInPartition = new ArrayList<String>();
                             for (ClusterLevelPartitionContext partitionContext :
                                     instanceContext.getPartitionCtxts()) {
-                                // store primary members in the partition context
-                                List<String> primaryMemberListInPartition = new ArrayList<String>();
                                 // get active primary members in this partition context
                                 for (MemberContext memberContext : partitionContext.getActiveMembers()) {
                                     if (isPrimaryMember(memberContext)) {
@@ -194,68 +194,70 @@ public class VMClusterMonitor extends AbstractClusterMonitor {
                                         primaryMemberListInPartition.add(memberContext.getMemberId());
                                     }
                                 }
-                                primaryMemberListInNetworkPartition.addAll(primaryMemberListInPartition);
-                                getMinCheckKnowledgeSession().setGlobal("clusterId", getClusterId());
+                            }
+
+                            primaryMemberListInNetworkPartition.addAll(primaryMemberListInPartition);
+                            getMinCheckKnowledgeSession().setGlobal("clusterId", getClusterId());
 //                                getMinCheckKnowledgeSession().setGlobal("lbRef", lbReferenceType);
-                                getMinCheckKnowledgeSession().setGlobal("isPrimary", hasPrimary);
-                                getMinCheckKnowledgeSession().setGlobal("instanceId",
-                                        instanceContext.getId());
+                            getMinCheckKnowledgeSession().setGlobal("isPrimary", hasPrimary);
+                            getMinCheckKnowledgeSession().setGlobal("instanceId",
+                                    instanceContext.getId());
 
-                                if (log.isDebugEnabled()) {
-                                    log.debug(String.format("Running minimum check for partition %s ",
-                                            partitionContext.getPartitionId()));
-                                }
+                            if (log.isDebugEnabled()) {
+                                log.debug(String.format("Running minimum check for cluster instance %s ",
+                                        instanceContext.getId()));
+                            }
 
-                                minCheckFactHandle = AutoscalerRuleEvaluator.
-                                        evaluateMinCheck(getMinCheckKnowledgeSession()
-                                                , minCheckFactHandle, partitionContext);
+                            minCheckFactHandle = AutoscalerRuleEvaluator.
+                                    evaluateMinCheck(getMinCheckKnowledgeSession()
+                                            , minCheckFactHandle, instanceContext);
 
-                                obsoleteCheckFactHandle = AutoscalerRuleEvaluator.
-                                        evaluateObsoleteCheck(getObsoleteCheckKnowledgeSession(),
-                                                obsoleteCheckFactHandle, partitionContext);
+                            obsoleteCheckFactHandle = AutoscalerRuleEvaluator.
+                                    evaluateObsoleteCheck(getObsoleteCheckKnowledgeSession(),
+                                            obsoleteCheckFactHandle, instanceContext);
 
-                                //checking the status of the cluster
+                            //checking the status of the cluster
 
-                                boolean rifReset = instanceContext.isRifReset();
-                                boolean memoryConsumptionReset = instanceContext.isMemoryConsumptionReset();
-                                boolean loadAverageReset = instanceContext.isLoadAverageReset();
+                            boolean rifReset = instanceContext.isRifReset();
+                            boolean memoryConsumptionReset = instanceContext.isMemoryConsumptionReset();
+                            boolean loadAverageReset = instanceContext.isLoadAverageReset();
 
-                                if (log.isDebugEnabled()) {
-                                    log.debug("flag of rifReset: " + rifReset + " flag of memoryConsumptionReset" + memoryConsumptionReset
-                                            + " flag of loadAverageReset" + loadAverageReset);
-                                }
-                                if (rifReset || memoryConsumptionReset || loadAverageReset) {
+                            if (log.isDebugEnabled()) {
+                                log.debug("flag of rifReset: " + rifReset + " flag of memoryConsumptionReset" + memoryConsumptionReset
+                                        + " flag of loadAverageReset" + loadAverageReset);
+                            }
+                            if (rifReset || memoryConsumptionReset || loadAverageReset) {
 
 
-                                    VMClusterContext vmClusterContext = (VMClusterContext) clusterContext;
+                                VMClusterContext vmClusterContext = (VMClusterContext) clusterContext;
 
-                                    getScaleCheckKnowledgeSession().setGlobal("instance", instanceContext);
-                                    getScaleCheckKnowledgeSession().setGlobal("clusterId", getClusterId());
-                                    getScaleCheckKnowledgeSession().setGlobal("autoscalePolicy", vmClusterContext.getAutoscalePolicy());
-                                    getScaleCheckKnowledgeSession().setGlobal("rifReset", rifReset);
-                                    getScaleCheckKnowledgeSession().setGlobal("mcReset", memoryConsumptionReset);
-                                    getScaleCheckKnowledgeSession().setGlobal("laReset", loadAverageReset);
+                                getScaleCheckKnowledgeSession().setGlobal("instance", instanceContext);
+                                getScaleCheckKnowledgeSession().setGlobal("clusterId", getClusterId());
+                                getScaleCheckKnowledgeSession().setGlobal("autoscalePolicy", vmClusterContext.getAutoscalePolicy());
+                                getScaleCheckKnowledgeSession().setGlobal("rifReset", rifReset);
+                                getScaleCheckKnowledgeSession().setGlobal("mcReset", memoryConsumptionReset);
+                                getScaleCheckKnowledgeSession().setGlobal("laReset", loadAverageReset);
 //                                    getScaleCheckKnowledgeSession().setGlobal("lbRef", lbReferenceType);
-                                    getScaleCheckKnowledgeSession().setGlobal("isPrimary", false);
-                                    getScaleCheckKnowledgeSession().setGlobal("primaryMembers", primaryMemberListInNetworkPartition);
+                                getScaleCheckKnowledgeSession().setGlobal("isPrimary", false);
+                                getScaleCheckKnowledgeSession().setGlobal("primaryMembers", primaryMemberListInNetworkPartition);
 
-                                    if (log.isDebugEnabled()) {
-                                        log.debug(String.format("Running scale check for network partition %s ", networkPartitionContext.getId()));
-                                        log.debug(" Primary members : " + primaryMemberListInNetworkPartition);
-                                    }
+                                if (log.isDebugEnabled()) {
+                                    log.debug(String.format("Running scale check for network partition %s ", networkPartitionContext.getId()));
+                                    log.debug(" Primary members : " + primaryMemberListInNetworkPartition);
+                                }
 
-                                    scaleCheckFactHandle = AutoscalerRuleEvaluator.evaluateScaleCheck(getScaleCheckKnowledgeSession()
-                                            , scaleCheckFactHandle, networkPartitionContext);
+                                scaleCheckFactHandle = AutoscalerRuleEvaluator.evaluateScaleCheck(getScaleCheckKnowledgeSession()
+                                        , scaleCheckFactHandle, networkPartitionContext);
 
-                                    instanceContext.setRifReset(false);
-                                    instanceContext.setMemoryConsumptionReset(false);
-                                    instanceContext.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()));
-                                }
+                                instanceContext.setRifReset(false);
+                                instanceContext.setMemoryConsumptionReset(false);
+                                instanceContext.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()));
                             }
 
+
                         }
                     }
                 }