Repository: stratos Updated Branches: refs/heads/master 48c364073 -> 9673d5a30
fixing NPE while caculating group status and fixing scaling drool issus Project: http://git-wip-us.apache.org/repos/asf/stratos/repo Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/9673d5a3 Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/9673d5a3 Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/9673d5a3 Branch: refs/heads/master Commit: 9673d5a30b9dcf586027032a7591a4df256cf31c Parents: 48c3640 Author: reka <[email protected]> Authored: Mon Dec 8 15:20:20 2014 +0530 Committer: reka <[email protected]> Committed: Mon Dec 8 16:08:28 2014 +0530 ---------------------------------------------------------------------- .../autoscaler/monitor/cluster/VMClusterMonitor.java | 9 ++++----- .../apache/stratos/autoscaler/rule/RuleTasksDelegator.java | 4 ++++ .../processor/group/GroupStatusInActiveProcessor.java | 2 +- 3 files changed, 9 insertions(+), 6 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/stratos/blob/9673d5a3/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 03d8a38..229dd7f 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 @@ -222,9 +222,7 @@ public class VMClusterMonitor extends AbstractClusterMonitor { getMinCheckKnowledgeSession().setGlobal("isPrimary", hasPrimary); //FIXME when parent chosen the partition String paritionAlgo = instanceContext.getPartitionAlgorithm(); - if(paritionAlgo == null) { - paritionAlgo = "one-after-another"; - } + getMinCheckKnowledgeSession().setGlobal("algorithmName", paritionAlgo); @@ -241,7 +239,6 @@ public class VMClusterMonitor extends AbstractClusterMonitor { boolean rifReset = instanceContext.isRifReset(); boolean memoryConsumptionReset = instanceContext.isMemoryConsumptionReset(); boolean loadAverageReset = instanceContext.isLoadAverageReset(); - if (log.isDebugEnabled()) { log.debug("Execution point of scaling Rule, [Is rif Reset] : " + rifReset + " [Is memoryConsumption Reset] : " + memoryConsumptionReset @@ -256,12 +253,14 @@ public class VMClusterMonitor extends AbstractClusterMonitor { getScaleCheckKnowledgeSession().setGlobal("autoscalePolicy", vmClusterContext.getAutoscalePolicy()); getScaleCheckKnowledgeSession().setGlobal("rifReset", rifReset); + //TODO to parse actual value + getScaleCheckKnowledgeSession().setGlobal("arspiReset", true); getScaleCheckKnowledgeSession().setGlobal("mcReset", memoryConsumptionReset); getScaleCheckKnowledgeSession().setGlobal("laReset", loadAverageReset); getScaleCheckKnowledgeSession().setGlobal("isPrimary", hasPrimary); getScaleCheckKnowledgeSession().setGlobal("primaryMembers", primaryMemberListInClusterInstance); getMinCheckKnowledgeSession().setGlobal("algorithmName", - instanceContext.getPartitionAlgorithm()); + paritionAlgo); if (log.isDebugEnabled()) { log.debug(String.format("Running scale check for [cluster instance context] %s ", http://git-wip-us.apache.org/repos/asf/stratos/blob/9673d5a3/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 bd0ea1c..5c7ba30 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 @@ -145,6 +145,10 @@ public class RuleTasksDelegator { public AutoscaleAlgorithm getAutoscaleAlgorithm(String partitionAlgorithm) { AutoscaleAlgorithm autoscaleAlgorithm = null; + //FIXME to not parse for algo when partition is chosen by the parent + if(partitionAlgorithm == null) { + partitionAlgorithm = Constants.ONE_AFTER_ANOTHER_ALGORITHM_ID; + } if (log.isDebugEnabled()) { log.debug(String.format("Partition algorithm is ", partitionAlgorithm)); } http://git-wip-us.apache.org/repos/asf/stratos/blob/9673d5a3/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/status/processor/group/GroupStatusInActiveProcessor.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/status/processor/group/GroupStatusInActiveProcessor.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/status/processor/group/GroupStatusInActiveProcessor.java index e4be4b5..2bf761c 100644 --- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/status/processor/group/GroupStatusInActiveProcessor.java +++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/status/processor/group/GroupStatusInActiveProcessor.java @@ -104,7 +104,7 @@ public class GroupStatusInActiveProcessor extends GroupStatusProcessor { //ApplicationBuilder.handleApp(appId); } else if (component instanceof Group) { //send activation to the parent - if (((Group) component).getStatus(null) != GroupStatus.Inactive) { + if (((Group) component).getStatus(instanceId) != GroupStatus.Inactive) { log.info("sending group in-active: " + component.getUniqueIdentifier()); ApplicationBuilder.handleGroupInActivateEvent(appId, component.getUniqueIdentifier(), instanceId); return true;
