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/01/15 18:21:48 UTC
git commit: Fix min check and algorithm to get non terminated count
Updated Branches:
refs/heads/master 3df204620 -> efdffe6ac
Fix min check and algorithm to get non terminated count
Project: http://git-wip-us.apache.org/repos/asf/incubator-stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-stratos/commit/efdffe6a
Tree: http://git-wip-us.apache.org/repos/asf/incubator-stratos/tree/efdffe6a
Diff: http://git-wip-us.apache.org/repos/asf/incubator-stratos/diff/efdffe6a
Branch: refs/heads/master
Commit: efdffe6acaa3228a7acc0b3ebf2cfa54b6fbdfba
Parents: 3df2046
Author: Lahiru Sandaruwan <la...@apache.org>
Authored: Wed Jan 15 22:55:44 2014 +0530
Committer: Lahiru Sandaruwan <la...@apache.org>
Committed: Wed Jan 15 22:55:44 2014 +0530
----------------------------------------------------------------------
.../stratos/autoscaler/NetworkPartitionContext.java | 12 ++++++------
.../org/apache/stratos/autoscaler/PartitionContext.java | 4 +++-
.../stratos/autoscaler/algorithm/OneAfterAnother.java | 6 +++---
.../apache/stratos/autoscaler/algorithm/RoundRobin.java | 8 +++++---
.../modules/distribution/src/main/conf/mincheck.drl | 4 ++--
5 files changed, 19 insertions(+), 15 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/efdffe6a/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 3e089cf..3bc56a2 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
@@ -446,16 +446,16 @@ public class NetworkPartitionContext implements Serializable{
// return partitionToMemberCountMap.containsKey(partitionId);
// }
- public int getMemberCountOfPartition(String partitionId){
+// public int getMemberCountOfPartition(String partitionId){
// if(partitionToMemberCountMap.containsKey(partitionId)) {
// return partitionToMemberCountMap.get(partitionId);
// }
// return 0;
- if(partitionCtxts.containsKey(partitionId)){
- return getPartitionCtxt(partitionId).getTotalMemberCount();
- }
- return 0;
- }
+// if(partitionCtxts.containsKey(partitionId)){
+// return getPartitionCtxt(partitionId).getTotalMemberCount();
+// }
+// return 0;
+// }
public Map<String, PartitionContext> getPartitionCtxts() {
return partitionCtxts;
http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/efdffe6a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/PartitionContext.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/PartitionContext.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/PartitionContext.java
index 36c3e97..886138d 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/PartitionContext.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/PartitionContext.java
@@ -325,7 +325,9 @@ public class PartitionContext implements Serializable{
return activeMembers.size() + pendingMembers.size() + terminationPendingMembers.size();
}
- public int getNonTerminatedMemberCount() {
+ public int
+
+ gs() {
return activeMembers.size() + pendingMembers.size();
}
http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/efdffe6a/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 636b372..acc5e09 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
@@ -65,7 +65,7 @@ public class OneAfterAnother implements AutoscaleAlgorithm {
// current partition is free
if (log.isDebugEnabled())
log.debug(String.format("A free space found for scale up in partition %s [current] %s [max] %s",
- currentPartitionId, networkPartitionContext.getMemberCountOfPartition(currentPartitionId),
+ currentPartitionId, networkPartitionContext.getNonTerminatedMemberCountOfPartition(currentPartitionId),
currentPartition.getPartitionMax())) ;
return currentPartition;
} else {
@@ -106,7 +106,7 @@ public class OneAfterAnother implements AutoscaleAlgorithm {
// current partition is free
if (log.isDebugEnabled())
log.debug(String.format("A free space found for scale down in partition %s [current] %s [min] %s",
- currentPartitionId, networkPartitionContext.getMemberCountOfPartition(currentPartitionId),
+ currentPartitionId, networkPartitionContext.getNonTerminatedMemberCountOfPartition(currentPartitionId),
currentPartition.getPartitionMin())) ;
return currentPartition;
} else {
@@ -114,7 +114,7 @@ public class OneAfterAnother implements AutoscaleAlgorithm {
if (log.isDebugEnabled())
log.debug(String.format("Partition %s reached with no space to scale down," +
"[current] %s [mib] %s", currentPartitionId,
- networkPartitionContext.getMemberCountOfPartition(currentPartitionId),
+ networkPartitionContext.getNonTerminatedMemberCountOfPartition(currentPartitionId),
currentPartition.getPartitionMin()));
return null;
}
http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/efdffe6a/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 a24eb06..04aa5f0 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
@@ -57,9 +57,11 @@ public class RoundRobin implements AutoscaleAlgorithm{
if(networkPartitionContext.getNonTerminatedMemberCountOfPartition(currentPartitionId)
< currentPartition.getPartitionMax()){
- // current partition is free
- if(log.isDebugEnabled())
- log.debug("Free space found in partition " + currentPartition.getId());
+ // current partition is free
+ if (log.isDebugEnabled())
+ log.debug(String.format("A free space found for scale up in partition %s [current] %s [max] %s",
+ currentPartitionId, networkPartitionContext.getNonTerminatedMemberCountOfPartition(currentPartitionId),
+ currentPartition.getPartitionMax())) ;
return currentPartition;
}
http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/efdffe6a/products/autoscaler/modules/distribution/src/main/conf/mincheck.drl
----------------------------------------------------------------------
diff --git a/products/autoscaler/modules/distribution/src/main/conf/mincheck.drl b/products/autoscaler/modules/distribution/src/main/conf/mincheck.drl
index 2c04459..994c950 100755
--- a/products/autoscaler/modules/distribution/src/main/conf/mincheck.drl
+++ b/products/autoscaler/modules/distribution/src/main/conf/mincheck.drl
@@ -54,9 +54,9 @@ dialect "mvel"
when
$ctxt : PartitionContext ()
eval(log.debug("Running minimum rule: [network-partition] " + $ctxt.getNetworkPartitionId() + " [partition] " + $ctxt.getPartitionId()))
- eval(log.debug("[min-check] [network-partition] " + $ctxt.getNetworkPartitionId() + " [partition] " + $ctxt.getPartitionId() + " Total member count: " + $ctxt.getTotalMemberCount()))
+ eval(log.debug("[min-check] [network-partition] " + $ctxt.getNetworkPartitionId() + " [partition] " + $ctxt.getPartitionId() + " Non termnated member count: " + $ctxt.getNonTerminatedMemberCount()))
eval(log.debug("[min-check] [network-partition] " + $ctxt.getNetworkPartitionId() + " [partition] " + $ctxt.getPartitionId() + " Minimum member count: " + $ctxt.getMinimumMemberCount()))
- eval($ctxt.getTotalMemberCount() < $ctxt.getMinimumMemberCount())
+ eval($ctxt.getNonTerminatedMemberCount() < $ctxt.getMinimumMemberCount())
then
$delegator.delegateSpawn($ctxt, clusterId, lbRef);