Lahiru Sandaruwan created STRATOS-1218: ------------------------------------------
Summary: Error "Failed to retrieve topology event message" occurs after running the dependency scaling sample sometime Key: STRATOS-1218 URL: https://issues.apache.org/jira/browse/STRATOS-1218 Project: Stratos Issue Type: Bug Components: Autoscaler Affects Versions: 4.1.0 Alpha Reporter: Lahiru Sandaruwan Fix For: 4.1.0 RC1 [2015-02-27 06:14:06,463] INFO {org.apache.stratos.autoscaler.event.receiver.topology.AutoscalerTopologyEventReceiver} - Cluster monitor has scaling dependents [true] [2015-02-27 06:14:06,473] INFO {org.apache.stratos.cloud.controller.services.impl.CloudControllerServiceImpl} - Getting deployment policy: [deployment-policy_id] deployment-policy-1 [2015-02-27 06:14:06,477] INFO {org.apache.stratos.mock.iaas.api.MockIaasApi} - Starting mock instance: [member-id] my-tomcat.tomcat.domain77e82b9c-0b5d-432a-9b02-0f058f855c03 [2015-02-27 06:14:06,478] INFO {org.apache.stratos.mock.iaas.services.impl.MockInstance} - Mock member started: [member-id] my-tomcat.tomcat.domain77e82b9c-0b5d-432a-9b02-0f058f855c03 [2015-02-27 06:14:06,480] INFO {org.apache.stratos.autoscaler.monitor.component.ParentComponentMonitor} - Dependent monitor already created, creating instance: [application] dependency-scaling-cartridges-app [component] my-tomcat.tomcat.domain [2015-02-27 06:14:06,482] ERROR {org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator} - Failed to retrieve topology event message java.lang.NullPointerException at org.apache.stratos.autoscaler.context.cluster.ClusterContext.addInstanceContext(ClusterContext.java:142) at org.apache.stratos.autoscaler.event.receiver.topology.AutoscalerTopologyEventReceiver$14.onEvent(AutoscalerTopologyEventReceiver.java:474) at org.apache.stratos.messaging.listener.EventListener.update(EventListener.java:42) at java.util.Observable.notifyObservers(Observable.java:159) at org.apache.stratos.messaging.event.EventObservable.notifyEventListeners(EventObservable.java:51) at org.apache.stratos.messaging.message.processor.topology.ClusterInstanceCreatedMessageProcessor.doProcess(ClusterInstanceCreatedMessageProcessor.java:131) at org.apache.stratos.messaging.message.processor.topology.ClusterInstanceCreatedMessageProcessor.process(ClusterInstanceCreatedMessageProcessor.java:60) at org.apache.stratos.messaging.message.processor.topology.ClusterInstanceTerminatedProcessor.process(ClusterInstanceTerminatedProcessor.java:73) at org.apache.stratos.messaging.message.processor.topology.ClusterRemovedMessageProcessor.process(ClusterRemovedMessageProcessor.java:65) at org.apache.stratos.messaging.message.processor.topology.ClusterInstanceInactivateProcessor.process(ClusterInstanceInactivateProcessor.java:73) at org.apache.stratos.messaging.message.processor.topology.ClusterInstanceActivatedProcessor.process(ClusterInstanceActivatedProcessor.java:73) at org.apache.stratos.messaging.message.processor.topology.ClusterCreatedMessageProcessor.process(ClusterCreatedMessageProcessor.java:65) at org.apache.stratos.messaging.message.processor.topology.ApplicationClustersRemovedMessageProcessor.process(ApplicationClustersRemovedMessageProcessor.java:63) at org.apache.stratos.messaging.message.processor.topology.ApplicationClustersCreatedMessageProcessor.process(ApplicationClustersCreatedMessageProcessor.java:64) at org.apache.stratos.messaging.message.processor.topology.ServiceRemovedMessageProcessor.process(ServiceRemovedMessageProcessor.java:64) at org.apache.stratos.messaging.message.processor.topology.ServiceCreatedMessageProcessor.process(ServiceCreatedMessageProcessor.java:65) at org.apache.stratos.messaging.message.processor.topology.CompleteTopologyMessageProcessor.process(CompleteTopologyMessageProcessor.java:74) at org.apache.stratos.messaging.message.processor.MessageProcessorChain.process(MessageProcessorChain.java:60) at org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator.run(TopologyEventMessageDelegator.java:73) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) [2015-02-27 06:14:06,484] INFO {org.apache.stratos.autoscaler.monitor.component.ParentComponentMonitor} - Notifying the [child] my-php.php.domain [instance] dependency-scaling-cartridges-app-1 with the highest [factor] 1.5 upon decision of dependent scaling [2015-02-27 06:14:06,484] INFO {org.apache.stratos.autoscaler.monitor.cluster.ClusterMonitor} - Parent scaling event received to [cluster]: my-php.php.domain, [network partition]: network-partition-1, [event] my-php.php.domain, [group instance] dependency-scaling-cartridges-app-1, [factor] 1.5 [2015-02-27 06:14:06,485] DEBUG {org.apache.stratos.autoscaler.rule.RuleLog} - Running dependent scaling rule: [network-partition] network-partition-1 [cluster-instance] dependency-scaling-cartridges-app-1 [2015-02-27 06:14:06,485] INFO {org.apache.stratos.autoscaler.rule.RuleLog} - [scale-up] Required member count based on dependecy scaling is higher than max, hence notifying to parent for possible group scaling or app bursting. [cluster] my-php.php.domain [instance id]dependency-scaling-cartridges-app-1 [max] 4 [2015-02-27 06:14:06,486] DEBUG {org.apache.stratos.autoscaler.rule.RuleLog} - [dependent-scale] is running for [cluster] my-php.php.domain [cluster-instance] dependency-scaling-cartridges-app-1 max member count is: 4 current member count is: 2 [2015-02-27 06:14:06,486] INFO {org.apache.stratos.mock.iaas.statistics.generator.MockHealthStatisticsUpdater} - Continuing last sample value: [cartridge-type] tomcat [factor] LoadAverage [value] 20 [2015-02-27 06:14:06,486] DEBUG {org.apache.stratos.autoscaler.algorithm.OneAfterAnother} - [one-after-another algorithm] [scale-up] [partition] partition-1 has space to create members. [non terminated count] 2 [max] 5 [2015-02-27 06:14:06,486] INFO {org.apache.stratos.mock.iaas.statistics.generator.MockHealthStatisticsUpdater} - Continuing last sample value: [cartridge-type] tomcat [factor] MemoryConsumption [value] 20 [2015-02-27 06:14:06,486] INFO {org.apache.stratos.autoscaler.monitor.component.ApplicationMonitor} - Handling application busting, since resources are exhausted in this application instance [2015-02-27 06:14:06,486] INFO {org.apache.stratos.mock.iaas.statistics.generator.MockHealthStatisticsGenerator} - Mock statistics updaters scheduled: [service-name] tomcat [2015-02-27 06:14:06,487] WARN {org.apache.stratos.autoscaler.monitor.component.ApplicationMonitor} - [Application] dependency-scaling-cartridges-app cannot be burst as no available resources found [2015-02-27 06:14:06,487] INFO {org.apache.stratos.mock.iaas.statistics.generator.MockHealthStatisticsGenerator} - Mock statistics updater task stopped: [service-name] tomcat [factor] MemoryConsumption [2015-02-27 06:14:06,486] INFO {org.apache.stratos.autoscaler.rule.RuleLog} - [dependency-scale][scale-up] Partition available, hence trying to spawn an instance to scale up! [2015-02-27 06:14:06,486] INFO {org.apache.stratos.mock.iaas.statistics.generator.MockHealthStatisticsGenerator} - Mock statistics updater task stopped: [service-name] tomcat [factor] LoadAverage [2015-02-27 06:14:06,487] DEBUG {org.apache.stratos.autoscaler.rule.RuleLog} - [dependency-scale][scale-up] [partition] partition-1 [cluster] my-php.php.domain [2015-02-27 06:14:06,487] INFO {org.apache.stratos.autoscaler.client.CloudControllerClient} - Trying to spawn an instance via cloud controller: [cluster] my-php.php.domain [partition] partition-1 [network-partition-id] network-partition-1 [2015-02-27 06:14:06,494] INFO {org.apache.stratos.cloud.controller.messaging.publisher.TopologyEventPublisher} - Publishing cluster instance created event: [service-name] tomcat [cluster-id] my-tomcat.tomcat.domain in [network-partition-id] null [instance-id] dependency-scaling-cartridges-app-2 [2015-02-27 06:14:06,498] INFO {org.apache.stratos.autoscaler.event.receiver.topology.AutoscalerTopologyEventReceiver} - Cluster monitor has scaling dependents [true] [2015-02-27 06:14:06,504] INFO {org.apache.stratos.cloud.controller.services.impl.CloudControllerServiceImpl} - Getting deployment policy: [deployment-policy_id] deployment-policy-1 [2015-02-27 06:14:06,508] ERROR {org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator} - Failed to retrieve topology event message java.lang.NullPointerException at org.apache.stratos.autoscaler.context.cluster.ClusterContext.addInstanceContext(ClusterContext.java:142) at org.apache.stratos.autoscaler.event.receiver.topology.AutoscalerTopologyEventReceiver$14.onEvent(AutoscalerTopologyEventReceiver.java:474) at org.apache.stratos.messaging.listener.EventListener.update(EventListener.java:42) at java.util.Observable.notifyObservers(Observable.java:159) at org.apache.stratos.messaging.event.EventObservable.notifyEventListeners(EventObservable.java:51) at org.apache.stratos.messaging.message.processor.topology.ClusterInstanceCreatedMessageProcessor.doProcess(ClusterInstanceCreatedMessageProcessor.java:131) at org.apache.stratos.messaging.message.processor.topology.ClusterInstanceCreatedMessageProcessor.process(ClusterInstanceCreatedMessageProcessor.java:60) at org.apache.stratos.messaging.message.processor.topology.ClusterInstanceTerminatedProcessor.process(ClusterInstanceTerminatedProcessor.java:73) at org.apache.stratos.messaging.message.processor.topology.ClusterRemovedMessageProcessor.process(ClusterRemovedMessageProcessor.java:65) at org.apache.stratos.messaging.message.processor.topology.ClusterInstanceInactivateProcessor.process(ClusterInstanceInactivateProcessor.java:73) at org.apache.stratos.messaging.message.processor.topology.ClusterInstanceActivatedProcessor.process(ClusterInstanceActivatedProcessor.java:73) at org.apache.stratos.messaging.message.processor.topology.ClusterCreatedMessageProcessor.process(ClusterCreatedMessageProcessor.java:65) at org.apache.stratos.messaging.message.processor.topology.ApplicationClustersRemovedMessageProcessor.process(ApplicationClustersRemovedMessageProcessor.java:63) at org.apache.stratos.messaging.message.processor.topology.ApplicationClustersCreatedMessageProcessor.process(ApplicationClustersCreatedMessageProcessor.java:64) at org.apache.stratos.messaging.message.processor.topology.ServiceRemovedMessageProcessor.process(ServiceRemovedMessageProcessor.java:64) at org.apache.stratos.messaging.message.processor.topology.ServiceCreatedMessageProcessor.process(ServiceCreatedMessageProcessor.java:65) at org.apache.stratos.messaging.message.processor.topology.CompleteTopologyMessageProcessor.process(CompleteTopologyMessageProcessor.java:74) at org.apache.stratos.messaging.message.processor.MessageProcessorChain.process(MessageProcessorChain.java:60) at org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator.run(TopologyEventMessageDelegator.java:73) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) [2015-02-27 06:14:06,463] INFO {org.apache.stratos.autoscaler.event.receiver.topology.AutoscalerTopologyEventReceiver} - Cluster monitor has scaling dependents [true] [2015-02-27 06:14:06,473] INFO {org.apache.stratos.cloud.controller.services.impl.CloudControllerServiceImpl} - Getting deployment policy: [deployment-policy_id] deployment-policy-1 [2015-02-27 06:14:06,477] INFO {org.apache.stratos.mock.iaas.api.MockIaasApi} - Starting mock instance: [member-id] my-tomcat.tomcat.domain77e82b9c-0b5d-432a-9b02-0f058f855c03 [2015-02-27 06:14:06,478] INFO {org.apache.stratos.mock.iaas.services.impl.MockInstance} - Mock member started: [member-id] my-tomcat.tomcat.domain77e82b9c-0b5d-432a-9b02-0f058f855c03 [2015-02-27 06:14:06,480] INFO {org.apache.stratos.autoscaler.monitor.component.ParentComponentMonitor} - Dependent monitor already created, creating instance: [application] dependency-scaling-cartridges-app [component] my-tomcat.tomcat.domain [2015-02-27 06:14:06,482] ERROR {org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator} - Failed to retrieve topology event message java.lang.NullPointerException at org.apache.stratos.autoscaler.context.cluster.ClusterContext.addInstanceContext(ClusterContext.java:142) at org.apache.stratos.autoscaler.event.receiver.topology.AutoscalerTopologyEventReceiver$14.onEvent(AutoscalerTopologyEventReceiver.java:474) at org.apache.stratos.messaging.listener.EventListener.update(EventListener.java:42) at java.util.Observable.notifyObservers(Observable.java:159) at org.apache.stratos.messaging.event.EventObservable.notifyEventListeners(EventObservable.java:51) at org.apache.stratos.messaging.message.processor.topology.ClusterInstanceCreatedMessageProcessor.doProcess(ClusterInstanceCreatedMessageProcessor.java:131) at org.apache.stratos.messaging.message.processor.topology.ClusterInstanceCreatedMessageProcessor.process(ClusterInstanceCreatedMessageProcessor.java:60) at org.apache.stratos.messaging.message.processor.topology.ClusterInstanceTerminatedProcessor.process(ClusterInstanceTerminatedProcessor.java:73) at org.apache.stratos.messaging.message.processor.topology.ClusterRemovedMessageProcessor.process(ClusterRemovedMessageProcessor.java:65) at org.apache.stratos.messaging.message.processor.topology.ClusterInstanceInactivateProcessor.process(ClusterInstanceInactivateProcessor.java:73) at org.apache.stratos.messaging.message.processor.topology.ClusterInstanceActivatedProcessor.process(ClusterInstanceActivatedProcessor.java:73) at org.apache.stratos.messaging.message.processor.topology.ClusterCreatedMessageProcessor.process(ClusterCreatedMessageProcessor.java:65) at org.apache.stratos.messaging.message.processor.topology.ApplicationClustersRemovedMessageProcessor.process(ApplicationClustersRemovedMessageProcessor.java:63) at org.apache.stratos.messaging.message.processor.topology.ApplicationClustersCreatedMessageProcessor.process(ApplicationClustersCreatedMessageProcessor.java:64) at org.apache.stratos.messaging.message.processor.topology.ServiceRemovedMessageProcessor.process(ServiceRemovedMessageProcessor.java:64) at org.apache.stratos.messaging.message.processor.topology.ServiceCreatedMessageProcessor.process(ServiceCreatedMessageProcessor.java:65) at org.apache.stratos.messaging.message.processor.topology.CompleteTopologyMessageProcessor.process(CompleteTopologyMessageProcessor.java:74) at org.apache.stratos.messaging.message.processor.MessageProcessorChain.process(MessageProcessorChain.java:60) at org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator.run(TopologyEventMessageDelegator.java:73) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) [2015-02-27 06:14:06,484] INFO {org.apache.stratos.autoscaler.monitor.component.ParentComponentMonitor} - Notifying the [child] my-php.php.domain [instance] dependency-scaling-cartridges-app-1 with the highest [factor] 1.5 upon decision of dependent scaling [2015-02-27 06:14:06,484] INFO {org.apache.stratos.autoscaler.monitor.cluster.ClusterMonitor} - Parent scaling event received to [cluster]: my-php.php.domain, [network partition]: network-partition-1, [event] my-php.php.domain, [group instance] dependency-scaling-cartridges-app-1, [factor] 1.5 [2015-02-27 06:14:06,485] DEBUG {org.apache.stratos.autoscaler.rule.RuleLog} - Running dependent scaling rule: [network-partition] network-partition-1 [cluster-instance] dependency-scaling-cartridges-app-1 [2015-02-27 06:14:06,485] INFO {org.apache.stratos.autoscaler.rule.RuleLog} - [scale-up] Required member count based on dependecy scaling is higher than max, hence notifying to parent for possible group scaling or app bursting. [cluster] my-php.php.domain [instance id]dependency-scaling-cartridges-app-1 [max] 4 [2015-02-27 06:14:06,486] DEBUG {org.apache.stratos.autoscaler.rule.RuleLog} - [dependent-scale] is running for [cluster] my-php.php.domain [cluster-instance] dependency-scaling-cartridges-app-1 max member count is: 4 current member count is: 2 [2015-02-27 06:14:06,486] INFO {org.apache.stratos.mock.iaas.statistics.generator.MockHealthStatisticsUpdater} - Continuing last sample value: [cartridge-type] tomcat [factor] LoadAverage [value] 20 [2015-02-27 06:14:06,486] DEBUG {org.apache.stratos.autoscaler.algorithm.OneAfterAnother} - [one-after-another algorithm] [scale-up] [partition] partition-1 has space to create members. [non terminated count] 2 [max] 5 [2015-02-27 06:14:06,486] INFO {org.apache.stratos.mock.iaas.statistics.generator.MockHealthStatisticsUpdater} - Continuing last sample value: [cartridge-type] tomcat [factor] MemoryConsumption [value] 20 [2015-02-27 06:14:06,486] INFO {org.apache.stratos.autoscaler.monitor.component.ApplicationMonitor} - Handling application busting, since resources are exhausted in this application instance [2015-02-27 06:14:06,486] INFO {org.apache.stratos.mock.iaas.statistics.generator.MockHealthStatisticsGenerator} - Mock statistics updaters scheduled: [service-name] tomcat [2015-02-27 06:14:06,487] WARN {org.apache.stratos.autoscaler.monitor.component.ApplicationMonitor} - [Application] dependency-scaling-cartridges-app cannot be burst as no available resources found [2015-02-27 06:14:06,487] INFO {org.apache.stratos.mock.iaas.statistics.generator.MockHealthStatisticsGenerator} - Mock statistics updater task stopped: [service-name] tomcat [factor] MemoryConsumption [2015-02-27 06:14:06,486] INFO {org.apache.stratos.autoscaler.rule.RuleLog} - [dependency-scale][scale-up] Partition available, hence trying to spawn an instance to scale up! [2015-02-27 06:14:06,486] INFO {org.apache.stratos.mock.iaas.statistics.generator.MockHealthStatisticsGenerator} - Mock statistics updater task stopped: [service-name] tomcat [factor] LoadAverage [2015-02-27 06:14:06,487] DEBUG {org.apache.stratos.autoscaler.rule.RuleLog} - [dependency-scale][scale-up] [partition] partition-1 [cluster] my-php.php.domain [2015-02-27 06:14:06,487] INFO {org.apache.stratos.autoscaler.client.CloudControllerClient} - Trying to spawn an instance via cloud controller: [cluster] my-php.php.domain [partition] partition-1 [network-partition-id] network-partition-1 [2015-02-27 06:14:06,494] INFO {org.apache.stratos.cloud.controller.messaging.publisher.TopologyEventPublisher} - Publishing cluster instance created event: [service-name] tomcat [cluster-id] my-tomcat.tomcat.domain in [network-partition-id] null [instance-id] dependency-scaling-cartridges-app-2 [2015-02-27 06:14:06,498] INFO {org.apache.stratos.autoscaler.event.receiver.topology.AutoscalerTopologyEventReceiver} - Cluster monitor has scaling dependents [true] [2015-02-27 06:14:06,504] INFO {org.apache.stratos.cloud.controller.services.impl.CloudControllerServiceImpl} - Getting deployment policy: [deployment-policy_id] deployment-policy-1 [2015-02-27 06:14:06,508] ERROR {org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator} - Failed to retrieve topology event message java.lang.NullPointerException at org.apache.stratos.autoscaler.context.cluster.ClusterContext.addInstanceContext(ClusterContext.java:142) at org.apache.stratos.autoscaler.event.receiver.topology.AutoscalerTopologyEventReceiver$14.onEvent(AutoscalerTopologyEventReceiver.java:474) at org.apache.stratos.messaging.listener.EventListener.update(EventListener.java:42) at java.util.Observable.notifyObservers(Observable.java:159) at org.apache.stratos.messaging.event.EventObservable.notifyEventListeners(EventObservable.java:51) at org.apache.stratos.messaging.message.processor.topology.ClusterInstanceCreatedMessageProcessor.doProcess(ClusterInstanceCreatedMessageProcessor.java:131) at org.apache.stratos.messaging.message.processor.topology.ClusterInstanceCreatedMessageProcessor.process(ClusterInstanceCreatedMessageProcessor.java:60) at org.apache.stratos.messaging.message.processor.topology.ClusterInstanceTerminatedProcessor.process(ClusterInstanceTerminatedProcessor.java:73) at org.apache.stratos.messaging.message.processor.topology.ClusterRemovedMessageProcessor.process(ClusterRemovedMessageProcessor.java:65) at org.apache.stratos.messaging.message.processor.topology.ClusterInstanceInactivateProcessor.process(ClusterInstanceInactivateProcessor.java:73) at org.apache.stratos.messaging.message.processor.topology.ClusterInstanceActivatedProcessor.process(ClusterInstanceActivatedProcessor.java:73) at org.apache.stratos.messaging.message.processor.topology.ClusterCreatedMessageProcessor.process(ClusterCreatedMessageProcessor.java:65) at org.apache.stratos.messaging.message.processor.topology.ApplicationClustersRemovedMessageProcessor.process(ApplicationClustersRemovedMessageProcessor.java:63) at org.apache.stratos.messaging.message.processor.topology.ApplicationClustersCreatedMessageProcessor.process(ApplicationClustersCreatedMessageProcessor.java:64) at org.apache.stratos.messaging.message.processor.topology.ServiceRemovedMessageProcessor.process(ServiceRemovedMessageProcessor.java:64) at org.apache.stratos.messaging.message.processor.topology.ServiceCreatedMessageProcessor.process(ServiceCreatedMessageProcessor.java:65) at org.apache.stratos.messaging.message.processor.topology.CompleteTopologyMessageProcessor.process(CompleteTopologyMessageProcessor.java:74) at org.apache.stratos.messaging.message.processor.MessageProcessorChain.process(MessageProcessorChain.java:60) at org.apache.stratos.messaging.message.receiver.topology.TopologyEventMessageDelegator.run(TopologyEventMessageDelegator.java:73) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) -- This message was sent by Atlassian JIRA (v6.3.4#6332)