Updated Branches:
  refs/heads/master 5c93d0f5a -> 6313be8d8

Fix to set partition algo and adding some debug logs


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

Branch: refs/heads/master
Commit: 6313be8d858cf34a7ea6d199f3b716447b5d3cf7
Parents: 5c93d0f
Author: Lahiru Sandaruwan <[email protected]>
Authored: Thu Dec 26 01:41:49 2013 +0530
Committer: Lahiru Sandaruwan <[email protected]>
Committed: Thu Dec 26 01:41:49 2013 +0530

----------------------------------------------------------------------
 .../org/apache/stratos/autoscaler/NetworkPartitionContext.java  | 3 ++-
 .../apache/stratos/autoscaler/algorithm/OneAfterAnother.java    | 4 ++++
 .../org/apache/stratos/autoscaler/algorithm/RoundRobin.java     | 5 ++++-
 .../apache/stratos/autoscaler/partition/PartitionManager.java   | 2 +-
 .../org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java  | 5 +++--
 .../java/org/apache/stratos/autoscaler/util/AutoscalerUtil.java | 3 ++-
 6 files changed, 16 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/6313be8d/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/NetworkPartitionContext.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/NetworkPartitionContext.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/NetworkPartitionContext.java
index defb7db..0f15ac3 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/NetworkPartitionContext.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/NetworkPartitionContext.java
@@ -64,10 +64,11 @@ public class NetworkPartitionContext implements 
Serializable{
     //partitions of this network partition
     private Map<String, PartitionContext> partitionCtxts;
 
-    public NetworkPartitionContext(String id) {
+    public NetworkPartitionContext(String id, String partitionAlgo) {
 
         super();
         this.id = id;
+        this.partitionAlgorithm = partitionAlgo;
         this.setServiceToLBClusterId(new HashMap<String, String>());
         this.setClusterIdToLBClusterIdMap(new HashMap<String, String>());
 //        partitionToMemberCountMap = new HashMap<String, Integer>();

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/6313be8d/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithm/OneAfterAnother.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithm/OneAfterAnother.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithm/OneAfterAnother.java
index a187900..a10c4d0 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithm/OneAfterAnother.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithm/OneAfterAnother.java
@@ -49,6 +49,10 @@ public class OneAfterAnother implements AutoscaleAlgorithm {
        int currentPartitionIndex = 
networkPartitionContext.getCurrentPartitionIndex();
        List<?> partitions = 
Arrays.asList(networkPartitionContext.getPartitions());
        int noOfPartitions = partitions.size();
+        if(log.isDebugEnabled()){
+            log.debug(String.format("Selecting a partition from 'One After 
Another' algorithm, " +
+                    "%s partitions in the [network partition]: %s ", 
noOfPartitions, networkPartitionContext.getId()));
+        }
        
        for(int i=currentPartitionIndex; i< noOfPartitions; i++)
        {

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/6313be8d/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithm/RoundRobin.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithm/RoundRobin.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithm/RoundRobin.java
index 74d9eda..8bf14d6 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithm/RoundRobin.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/algorithm/RoundRobin.java
@@ -40,7 +40,10 @@ public class RoundRobin implements AutoscaleAlgorithm{
 
        List<?> partitions = 
Arrays.asList(networkPartitionContext.getPartitions());
        int noOfPartitions = partitions.size();
-
+        if(log.isDebugEnabled()){
+            log.debug(String.format("Selecting a partition from 'Round Robin' 
algorithm, " +
+                    "%s partitions in the [network partition]: %s ", 
noOfPartitions, networkPartitionContext.getId()));
+        }
        for(int i=0; i < noOfPartitions; i++)
        {
            int currentPartitionIndex = 
networkPartitionContext.getCurrentPartitionIndex();

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/6313be8d/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/partition/PartitionManager.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/partition/PartitionManager.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/partition/PartitionManager.java
index 5b9c3ab..3901502 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/partition/PartitionManager.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/partition/PartitionManager.java
@@ -124,7 +124,7 @@ private static final Log log = 
LogFactory.getLog(PartitionManager.class);
             if (!networkPartitionContexts.containsKey(id)) {
                 NetworkPartitionContext networkPartitionContext =
                                                                   new 
NetworkPartitionContext(
-                                                                               
               id);
+                                                                               
               id, partitionGroup.getPartitionAlgo());
                 addNetworkPartitionContext(networkPartitionContext);
                 
RegistryManager.getInstance().persistNetworkPartition(networkPartitionContext);
             }

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/6313be8d/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java
index 4e9f1c9..6b727a4 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java
@@ -13,8 +13,6 @@ import 
org.apache.stratos.autoscaler.partition.PartitionManager;
 import org.apache.stratos.cloud.controller.deployment.partition.Partition;
 import org.apache.stratos.cloud.controller.pojo.MemberContext;
 
-import java.util.Properties;
-
 /**
  * This will have utility methods that need to be executed from rule file...
  */
@@ -34,6 +32,9 @@ public class RuleTasksDelegator {
 
     public AutoscaleAlgorithm getAutoscaleAlgorithm(String partitionAlgorithm){
         AutoscaleAlgorithm autoscaleAlgorithm = null;
+        if(log.isDebugEnabled()){
+            log.debug(String.format("Partition algorithm is ", 
partitionAlgorithm));
+        }
         if(Constants.ROUND_ROBIN_ALGORITHM_ID.equals(partitionAlgorithm)){
 
             autoscaleAlgorithm = new RoundRobin();

http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/6313be8d/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/AutoscalerUtil.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/AutoscalerUtil.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/AutoscalerUtil.java
index b1d74c5..d161577 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/AutoscalerUtil.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/util/AutoscalerUtil.java
@@ -114,7 +114,8 @@ public class AutoscalerUtil {
         
         for (PartitionGroup partitionGroup: 
deploymentPolicy.getPartitionGroups()){
 
-            NetworkPartitionContext networkPartitionContext = new 
NetworkPartitionContext(partitionGroup.getId());
+            NetworkPartitionContext networkPartitionContext = new 
NetworkPartitionContext(partitionGroup.getId(),
+                    partitionGroup.getPartitionAlgo());
 
             for(Partition partition: partitionGroup.getPartitions()){
                 PartitionContext partitionContext = new 
PartitionContext(partition);

Reply via email to