You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by re...@apache.org on 2014/12/15 06:53:38 UTC

stratos git commit: adding synchronized to monitor to call it by dif threads

Repository: stratos
Updated Branches:
  refs/heads/4.1.0-test 8388e3322 -> df4710a10


adding synchronized to monitor to call it by dif threads


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

Branch: refs/heads/4.1.0-test
Commit: df4710a10363314ada966c54b5fd258341db383b
Parents: 8388e33
Author: reka <rt...@gmail.com>
Authored: Mon Dec 15 11:21:44 2014 +0530
Committer: reka <rt...@gmail.com>
Committed: Mon Dec 15 11:22:02 2014 +0530

----------------------------------------------------------------------
 .../topology/AutoscalerTopologyEventReceiver.java         |  2 ++
 .../apache/stratos/autoscaler/monitor/MonitorFactory.java | 10 +++++-----
 .../autoscaler/monitor/cluster/VMClusterMonitor.java      |  6 +++++-
 .../apache/stratos/autoscaler/util/AutoscalerUtil.java    |  4 ++--
 4 files changed, 14 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/stratos/blob/df4710a1/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 8778c61..87a9c91 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
@@ -468,6 +468,8 @@ public class AutoscalerTopologyEventReceiver {
                                         clusterMonitor.startScheduler();
                                         log.info("Monitoring task for Cluster Monitor with cluster id "
                                                 + clusterInstanceCreatedEvent.getClusterId() + " started successfully");
+                                    } else {
+                                        ((VMClusterMonitor)clusterMonitor).monitor();
                                     }
                                 } catch (PolicyValidationException e) {
                                     log.error(e.getMessage(), e);

http://git-wip-us.apache.org/repos/asf/stratos/blob/df4710a1/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/MonitorFactory.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/MonitorFactory.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/MonitorFactory.java
index caf1afe..6c26ad8 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/MonitorFactory.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/monitor/MonitorFactory.java
@@ -109,15 +109,15 @@ public class MonitorFactory {
 
 
             boolean hasScalingDependents = false;
+            if(parentMonitor.getScalingDependencies() != null) {
+                for (ScalingDependentList scalingDependentList : parentMonitor.getScalingDependencies()){
 
-            for (ScalingDependentList scalingDependentList : parentMonitor.getScalingDependencies()){
-
-                if(scalingDependentList.getScalingDependentListComponents().contains(context.getId())){
+                    if(scalingDependentList.getScalingDependentListComponents().contains(context.getId())){
 
-                    hasScalingDependents = true;
+                        hasScalingDependents = true;
+                    }
                 }
             }
-
             groupMonitor = new GroupMonitor(group, appId, instanceIds, hasScalingDependents);
             groupMonitor.setAppId(appId);
             if (parentMonitor != null) {

http://git-wip-us.apache.org/repos/asf/stratos/blob/df4710a1/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 66a4837..9f40c76 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
@@ -186,7 +186,7 @@ public class VMClusterMonitor extends AbstractClusterMonitor {
         return false;
     }
 
-    public void monitor() {
+    public synchronized void monitor() {
 
         for (ClusterLevelNetworkPartitionContext networkPartitionContext : getNetworkPartitionCtxts()) {
 
@@ -943,6 +943,10 @@ public class VMClusterMonitor extends AbstractClusterMonitor {
                 }
             } //TODO else part
 
+            if(partitionCtxt.getTotalMemberCount() == 0) {
+                this.monitor();
+            }
+
 
         } catch (Exception e) {
             String msg = "Error processing event " + e.getLocalizedMessage();

http://git-wip-us.apache.org/repos/asf/stratos/blob/df4710a1/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 1d3ca4a..7c8dd2d 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
@@ -307,7 +307,7 @@ public class AutoscalerUtil {
             property.setValue(value);
             propertyList.add(property);
         }
-        
+
         if(propertyList.isEmpty()) {
             return null;
         }
@@ -317,7 +317,7 @@ public class AutoscalerUtil {
         properties.setProperties(propertyArray);
         return properties;
     }
-    
+
     public static org.apache.stratos.cloud.controller.stub.Properties toStubProperties(
             org.apache.stratos.common.Properties properties) {
         org.apache.stratos.cloud.controller.stub.Properties stubProps = new org.apache.stratos.cloud.controller.stub.Properties();