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 <[email protected]>
Authored: Tue Dec 2 11:53:33 2014 +0530
Committer: Lahiru Sandaruwan <[email protected]>
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()));
                             }
 
+
                         }
                     }
                 }

Reply via email to