Repository: stratos
Updated Branches:
  refs/heads/master ccce60dac -> 87bb6ea25


fixing cluster instance creation issue and updating min and max for cluster 
instance


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

Branch: refs/heads/master
Commit: 87bb6ea2522f0f63b0ffe2b9898543887840cbb7
Parents: ccce60d
Author: reka <[email protected]>
Authored: Tue Dec 2 12:13:20 2014 +0530
Committer: reka <[email protected]>
Committed: Tue Dec 2 12:13:33 2014 +0530

----------------------------------------------------------------------
 .../context/cluster/ClusterContextFactory.java  |  4 ----
 .../context/cluster/ClusterInstanceContext.java | 21 ++++++++++++++++----
 .../context/cluster/VMClusterContext.java       | 13 ++++++++++++
 .../AutoscalerTopologyEventReceiver.java        |  4 ++--
 4 files changed, 32 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/stratos/blob/87bb6ea2/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/ClusterContextFactory.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/ClusterContextFactory.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/ClusterContextFactory.java
index 02773e0..76614f9 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/ClusterContextFactory.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/ClusterContextFactory.java
@@ -65,11 +65,7 @@ public class ClusterContextFactory {
         DeploymentPolicy deploymentPolicy;
         ApplicationHolder.acquireReadLock();
         try {
-            Application application = ApplicationHolder.getApplications().
-                    getApplication(cluster.getAppId());
             deploymentPolicy = 
PolicyManager.getInstance().getDeploymentPolicy(cluster.getAppId());
-            ChildPolicy policy = deploymentPolicy.
-                    
getChildPolicy(AutoscalerUtil.getAliasFromClusterId(cluster.getClusterId()));
         } finally {
             ApplicationHolder.releaseReadLock();
         }

http://git-wip-us.apache.org/repos/asf/stratos/blob/87bb6ea2/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/ClusterInstanceContext.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/ClusterInstanceContext.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/ClusterInstanceContext.java
index 0c4bf58..1f7ff85 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/ClusterInstanceContext.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/ClusterInstanceContext.java
@@ -62,7 +62,8 @@ public class ClusterInstanceContext extends InstanceContext {
     private int minInstanceCount = 0, maxInstanceCount = 0;
     private int requiredInstanceCountBasedOnStats;
     private int requiredInstanceCountBasedOnDependencies;
-    private int min;
+    private int minMembers;
+    private int maxMembers;
     //details required for partition selection algorithms
     private int currentPartitionIndex;
     private ChildLevelPartition[] partitions;
@@ -71,7 +72,7 @@ public class ClusterInstanceContext extends InstanceContext {
                                   int min) {
 
         super(clusterInstanceId);
-        this.min = min;
+        this.setMinMembers(min);
         if (partitions == null) {
             this.partitions = new ChildLevelPartition[0];
         } else {
@@ -434,7 +435,19 @@ public class ClusterInstanceContext extends 
InstanceContext {
     }
 
 
-    public int getMin() {
-        return min;
+    public int getMinMembers() {
+        return minMembers;
+    }
+
+    public int getMaxMembers() {
+        return maxMembers;
+    }
+
+    public void setMaxMembers(int maxMembers) {
+        this.maxMembers = maxMembers;
+    }
+
+    public void setMinMembers(int minMembers) {
+        this.minMembers = minMembers;
     }
 }

http://git-wip-us.apache.org/repos/asf/stratos/blob/87bb6ea2/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/VMClusterContext.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/VMClusterContext.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/VMClusterContext.java
index 3ad1050..8cae493 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/VMClusterContext.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/context/cluster/VMClusterContext.java
@@ -20,6 +20,7 @@ package org.apache.stratos.autoscaler.context.cluster;
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
+import org.apache.stratos.autoscaler.applications.ApplicationHolder;
 import org.apache.stratos.autoscaler.client.CloudControllerClient;
 import org.apache.stratos.autoscaler.context.member.MemberStatsContext;
 import 
org.apache.stratos.autoscaler.context.partition.ClusterLevelPartitionContext;
@@ -34,6 +35,8 @@ import 
org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.Ch
 import 
org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.Partition;
 import org.apache.stratos.autoscaler.util.AutoscalerUtil;
 import org.apache.stratos.cloud.controller.stub.domain.MemberContext;
+import org.apache.stratos.messaging.domain.applications.Application;
+import org.apache.stratos.messaging.domain.applications.ClusterDataHolder;
 import org.apache.stratos.messaging.domain.instance.ClusterInstance;
 import org.apache.stratos.messaging.domain.topology.Cluster;
 import org.apache.stratos.messaging.domain.topology.Member;
@@ -271,6 +274,16 @@ public class VMClusterContext extends 
AbstractClusterContext {
 
         ClusterInstanceContext clusterInstanceContext = 
clusterLevelNetworkPartitionContext.
                 getClusterInstanceContext(clusterInstance.getInstanceId());
+        ApplicationHolder.acquireReadLock();
+        try {
+            Application application = ApplicationHolder.getApplications().
+                    getApplication(cluster.getAppId());
+            ClusterDataHolder dataHolder = 
application.getClusterData(AutoscalerUtil.getAliasFromClusterId(clusterId));
+            clusterInstanceContext.setMinMembers(dataHolder.getMinInstances());
+            clusterInstanceContext.setMaxMembers(dataHolder.getMaxInstances());
+        } finally {
+            ApplicationHolder.releaseReadLock();
+        }
         if (clusterInstanceContext == null) {
             clusterInstanceContext = new 
ClusterInstanceContext(clusterInstance.getInstanceId(),
                     networkPartition.getPartitionAlgo(),

http://git-wip-us.apache.org/repos/asf/stratos/blob/87bb6ea2/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/event/receiver/topology/AutoscalerTopologyEventReceiver.java
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/event/receiver/topology/AutoscalerTopologyEventReceiver.java
 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/event/receiver/topology/AutoscalerTopologyEventReceiver.java
index 9ed5b03..f54654b 100644
--- 
a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/event/receiver/topology/AutoscalerTopologyEventReceiver.java
+++ 
b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/event/receiver/topology/AutoscalerTopologyEventReceiver.java
@@ -476,9 +476,9 @@ public class AutoscalerTopologyEventReceiver implements 
Runnable {
                                                    ClusterContextFactory.
                                                            
getVMClusterContext(instanceId,
                                                                    cluster));
-                                       } else {
-                                           
clusterContext.addInstanceContext(instanceId, cluster);
                                        }
+                                       
clusterContext.addInstanceContext(instanceId, cluster);
+
 
                                    }
                                    if 
(clusterMonitor.hasMonitoringStarted().compareAndSet(false, true)) {

Reply via email to