Hi All,

I remote debugged this and found out why this is occurring. The issue is
when we are building the Siddhi configuration We set
'DistributedProcessing' by checking whether ExecutionPlanConfiguration
returns "true" for the property  "siddhi.enable.distributed.processing".

if (isDistributedProcessingEnabledString != null &&
isDistributedProcessingEnabledString.equalsIgnoreCase("true"))

When we set distributed mode as Redundant node when creating the execution
plan property  "siddhi.enable.distributed.processing" returns
"RedundantNode". Hence distributed processing in Siddhi configuration is
not set. I am not quite sure whether this is the intended behavior.

Then in the init method of custom time window they initialize the window as
follows.


if (this.siddhiContext.isDistributedProcessingEnabled()) {
window = new SchedulerSiddhiQueueGrid<StreamEvent>(elementId, this,
this.siddhiContext, this.async);
} else {
window = new SchedulerSiddhiQueue<StreamEvent>(this);
}

SchedulerSiddhiQueue restore method expects a LinkedBlockingQueue. Hence
the ClassCastException. This means we are receiving a wrong object for the
restore method. And this happens on second node start up. Do we share state
between two execution plans through currentState/restoreState?

Thanks
Tishan


On Thu, Sep 17, 2015 at 9:44 AM, Sriskandarajah Suhothayan <[email protected]>
wrote:

> have you properly migrated SecondDerivativeFinderWindowProcessor to new
> siddhi version. the bug is there.
>
> Suho
>
> On Thu, Sep 17, 2015 at 9:32 AM, Anuruddha Liyanarachchi <
> [email protected]> wrote:
>
>> Hi Ramindu,
>>
>> Please find the CEP artefacts that is being used [1].
>> Please note that the node starts first is not throwing any error.
>>
>> [1]
>> https://drive.google.com/a/wso2.com/file/d/0Bw0NgSFZG5YkWUZybUoxbzM0TTg/view?usp=sharing
>> <https://drive.google.com/a/wso2.com/file/d/0Bw0NgSFZG5YkWUZybUoxbzM0TTg/view?usp=sharing>
>>
>> On Wed, Sep 16, 2015 at 10:34 PM, Sriskandarajah Suhothayan <
>> [email protected]> wrote:
>>
>>> From the logs it looks like its an issue in
>>> SecondDerivativeFinderWindowProcessor check the getting and restoring the
>>> state part.
>>>
>>> Suho
>>>
>>> On Wed, Sep 16, 2015 at 10:16 PM, Ramindu De Silva <[email protected]>
>>> wrote:
>>>
>>>> Hi Anuruddha,
>>>>
>>>> Is it possible to send me the artefacts you used for this scenario, so
>>>> that i can reproduce and debug and see whats causing this issue.
>>>>
>>>> Best Regards,
>>>>
>>>> On Wed, Sep 16, 2015 at 7:30 PM, Anuruddha Liyanarachchi <
>>>> [email protected]> wrote:
>>>>
>>>>> Hi,
>>>>>
>>>>> I created CEP HA cluster with Deployment for full-active-active mode
>>>>> as per [1].
>>>>> I am seeing following error when starting the 2nd member.
>>>>> I have also attached execution plan [2].
>>>>>
>>>>> What is causing this issue ?
>>>>>
>>>>> [2015-09-16 13:22:38,191] ERROR - {HAManager}  Syncing failed when
>>>>> becoming a Passive Node for tenant:-1234
>>>>> on:SecondDerivativeOfRequestsInFlightFinder execution plan
>>>>> java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to
>>>>> java.util.concurrent.LinkedBlockingQueue
>>>>> at
>>>>> org.wso2.siddhi.core.util.collection.queue.SiddhiQueue.restoreState(SiddhiQueue.java:48)
>>>>> at
>>>>> org.apache.stratos.cep.extension.SecondDerivativeFinderWindowProcessor.restoreState(SecondDerivativeFinderWindowProcessor.java:229)
>>>>> at
>>>>> org.wso2.siddhi.core.query.processor.window.WindowProcessor.restore(WindowProcessor.java:113)
>>>>> at
>>>>> org.wso2.siddhi.core.snapshot.SnapshotService.restore(SnapshotService.java:70)
>>>>> at org.wso2.siddhi.core.SiddhiManager.restore(SiddhiManager.java:443)
>>>>> at
>>>>> org.wso2.carbon.event.processor.core.internal.ha.HAManager.becomePassive(HAManager.java:161)
>>>>> at
>>>>> org.wso2.carbon.event.processor.core.internal.ha.HAManager.tryChangeState(HAManager.java:111)
>>>>> at
>>>>> org.wso2.carbon.event.processor.core.internal.ha.HAManager.init(HAManager.java:97)
>>>>> at
>>>>> org.wso2.carbon.event.processor.core.internal.CarbonEventProcessorService.addExecutionPlanConfiguration(CarbonEventProcessorService.java:358)
>>>>> at
>>>>> org.wso2.carbon.event.processor.core.EventProcessorDeployer.processDeploy(EventProcessorDeployer.java:138)
>>>>> at
>>>>> org.wso2.carbon.event.processor.core.internal.util.EventProcessorConfigurationFilesystemInvoker.reload(EventProcessorConfigurationFilesystemInvoker.java:86)
>>>>> at
>>>>> org.wso2.carbon.event.processor.core.internal.CarbonEventProcessorService.activateInactiveExecutionPlanConfigurations(CarbonEventProcessorService.java:749)
>>>>> at
>>>>> org.wso2.carbon.event.processor.core.internal.CarbonEventProcessorService.notifyServiceAvailability(CarbonEventProcessorService.java:530)
>>>>> at
>>>>> org.wso2.carbon.event.processor.core.internal.ds.EventProcessorServiceDS.setHazelcastInstance(EventProcessorServiceDS.java:102)
>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>>> at
>>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>>>>> at
>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>>>> at java.lang.reflect.Method.invoke(Method.java:606)
>>>>> at
>>>>> org.eclipse.equinox.internal.ds.model.ComponentReference.bind(ComponentReference.java:376)
>>>>> at
>>>>> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.bindReference(ServiceComponentProp.java:432)
>>>>> at
>>>>> org.eclipse.equinox.internal.ds.InstanceProcess.dynamicBind(InstanceProcess.java:416)
>>>>> at
>>>>> org.eclipse.equinox.internal.ds.Resolver.getEligible(Resolver.java:334)
>>>>> at
>>>>> org.eclipse.equinox.internal.ds.SCRManager.serviceChanged(SCRManager.java:222)
>>>>> at
>>>>> org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:107)
>>>>> at
>>>>> org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861)
>>>>> at
>>>>> org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
>>>>> at
>>>>> org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
>>>>> at
>>>>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819)
>>>>> at
>>>>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771)
>>>>> at
>>>>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130)
>>>>> at
>>>>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:214)
>>>>> at
>>>>> org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:433)
>>>>> at
>>>>> org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:451)
>>>>> at
>>>>> org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:950)
>>>>> at
>>>>> org.wso2.carbon.core.clustering.hazelcast.HazelcastClusteringAgent.init(HazelcastClusteringAgent.java:214)
>>>>> at
>>>>> org.wso2.carbon.core.util.ClusteringUtil.enableClustering(ClusteringUtil.java:44)
>>>>> at
>>>>> org.wso2.carbon.core.internal.StartupFinalizerServiceComponent.completeInitialization(StartupFinalizerServiceComponent.java:175)
>>>>> at
>>>>> org.wso2.carbon.core.internal.StartupFinalizerServiceComponent.serviceChanged(StartupFinalizerServiceComponent.java:282)
>>>>> at
>>>>> org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:107)
>>>>> at
>>>>> org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861)
>>>>> at
>>>>> org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
>>>>> at
>>>>> org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
>>>>> at
>>>>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819)
>>>>> at
>>>>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771)
>>>>> at
>>>>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130)
>>>>> at
>>>>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:214)
>>>>> at
>>>>> org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:433)
>>>>> at
>>>>> org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:451)
>>>>> at
>>>>> org.wso2.carbon.throttling.agent.internal.ThrottlingAgentServiceComponent.registerThrottlingAgent(ThrottlingAgentServiceComponent.java:123)
>>>>> at
>>>>> org.wso2.carbon.throttling.agent.internal.ThrottlingAgentServiceComponent.activate(ThrottlingAgentServiceComponent.java:100)
>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>>> at
>>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>>>>> at
>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>>>> at java.lang.reflect.Method.invoke(Method.java:606)
>>>>> at
>>>>> org.eclipse.equinox.internal.ds.model.ServiceComponent.activate(ServiceComponent.java:260)
>>>>> at
>>>>> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.activate(ServiceComponentProp.java:146)
>>>>> at
>>>>> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:347)
>>>>> at
>>>>> org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:620)
>>>>> at
>>>>> org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:197)
>>>>> at
>>>>> org.eclipse.equinox.internal.ds.Resolver.getEligible(Resolver.java:343)
>>>>> at
>>>>> org.eclipse.equinox.internal.ds.SCRManager.serviceChanged(SCRManager.java:222)
>>>>> at
>>>>> org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:107)
>>>>> at
>>>>> org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861)
>>>>> at
>>>>> org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
>>>>> at
>>>>> org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
>>>>> at
>>>>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819)
>>>>> at
>>>>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771)
>>>>> at
>>>>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130)
>>>>> at
>>>>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:214)
>>>>> at
>>>>> org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:433)
>>>>> at
>>>>> org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:451)
>>>>> at
>>>>> org.wso2.carbon.core.init.CarbonServerManager.initializeCarbon(CarbonServerManager.java:517)
>>>>> at
>>>>> org.wso2.carbon.core.init.CarbonServerManager.start(CarbonServerManager.java:219)
>>>>> at
>>>>> org.wso2.carbon.core.internal.CarbonCoreServiceComponent.activate(CarbonCoreServiceComponent.java:77)
>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>>> at
>>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>>>>> at
>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>>>> at java.lang.reflect.Method.invoke(Method.java:606)
>>>>> at
>>>>> org.eclipse.equinox.internal.ds.model.ServiceComponent.activate(ServiceComponent.java:260)
>>>>> at
>>>>> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.activate(ServiceComponentProp.java:146)
>>>>> at
>>>>> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:347)
>>>>> at
>>>>> org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:620)
>>>>> at
>>>>> org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:197)
>>>>> at
>>>>> org.eclipse.equinox.internal.ds.Resolver.getEligible(Resolver.java:343)
>>>>> at
>>>>> org.eclipse.equinox.internal.ds.SCRManager.serviceChanged(SCRManager.java:222)
>>>>> at
>>>>> org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:107)
>>>>> at
>>>>> org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861)
>>>>> at
>>>>> org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
>>>>> at
>>>>> org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
>>>>> at
>>>>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819)
>>>>> at
>>>>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771)
>>>>> at
>>>>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130)
>>>>> at
>>>>> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:214)
>>>>> at
>>>>> org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:433)
>>>>> at
>>>>> org.eclipse.equinox.http.servlet.internal.Activator.registerHttpService(Activator.java:81)
>>>>> at
>>>>> org.eclipse.equinox.http.servlet.internal.Activator.addProxyServlet(Activator.java:60)
>>>>> at
>>>>> org.eclipse.equinox.http.servlet.internal.ProxyServlet.init(ProxyServlet.java:40)
>>>>> at
>>>>> org.wso2.carbon.tomcat.ext.servlet.DelegationServlet.init(DelegationServlet.java:38)
>>>>> at
>>>>> org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1267)
>>>>> at
>>>>> org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1186)
>>>>> at
>>>>> org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1081)
>>>>> at
>>>>> org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5027)
>>>>> at
>>>>> org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5314)
>>>>> at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
>>>>> at
>>>>> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
>>>>> at
>>>>> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
>>>>> at java.util.concurrent.FutureTask.run(FutureTask.java:262)
>>>>> 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)
>>>>>
>>>>>
>>>>>
>>>>> [1]
>>>>> https://docs.wso2.com/display/CLUSTER420/Clustering+CEP+3.0.0+and+3.1.0#ClusteringCEP3.0.0and3.1.0-HAdeployment(recommended)
>>>>> [2]
>>>>> https://drive.google.com/a/wso2.com/file/d/0Bw0NgSFZG5YkQk4zQndLMnc0OFE/view?usp=sharing
>>>>>
>>>>> --
>>>>> *Thanks and Regards,*
>>>>> Anuruddha Lanka Liyanarachchi
>>>>> Software Engineer - WSO2
>>>>> Mobile : +94 (0) 712762611
>>>>> Tel      : +94 112 145 345
>>>>> a <[email protected]>[email protected]
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> *Ramindu De Silva*
>>>> Software Engineer
>>>> WSO2 Inc.: http://wso2.com
>>>> lean.enterprise.middleware
>>>>
>>>> email: [email protected] <[email protected]>
>>>> mob: +94 772339350
>>>> mob: +94 782731766
>>>>
>>>
>>>
>>>
>>> --
>>>
>>> *S. Suhothayan*
>>> Technical Lead & Team Lead of WSO2 Complex Event Processor
>>> *WSO2 Inc. *http://wso2.com
>>> * <http://wso2.com/>*
>>> lean . enterprise . middleware
>>>
>>>
>>> *cell: (+94) 779 756 757 <%28%2B94%29%20779%20756%20757> | blog:
>>> http://suhothayan.blogspot.com/ <http://suhothayan.blogspot.com/>twitter:
>>> http://twitter.com/suhothayan <http://twitter.com/suhothayan> | linked-in:
>>> http://lk.linkedin.com/in/suhothayan <http://lk.linkedin.com/in/suhothayan>*
>>>
>>
>>
>>
>> --
>> *Thanks and Regards,*
>> Anuruddha Lanka Liyanarachchi
>> Software Engineer - WSO2
>> Mobile : +94 (0) 712762611
>> Tel      : +94 112 145 345
>> a <[email protected]>[email protected]
>>
>
>
>
> --
>
> *S. Suhothayan*
> Technical Lead & Team Lead of WSO2 Complex Event Processor
> *WSO2 Inc. *http://wso2.com
> * <http://wso2.com/>*
> lean . enterprise . middleware
>
>
> *cell: (+94) 779 756 757 <%28%2B94%29%20779%20756%20757> | blog:
> http://suhothayan.blogspot.com/ <http://suhothayan.blogspot.com/>twitter:
> http://twitter.com/suhothayan <http://twitter.com/suhothayan> | linked-in:
> http://lk.linkedin.com/in/suhothayan <http://lk.linkedin.com/in/suhothayan>*
>
> _______________________________________________
> Dev mailing list
> [email protected]
> http://wso2.org/cgi-bin/mailman/listinfo/dev
>
>


-- 
Tishan Dahanayakage
Software Engineer
WSO2, Inc.
Mobile:+94 716481328

Disclaimer: This communication may contain privileged or other confidential
information and is intended exclusively for the addressee/s. If you are not
the intended recipient/s, or believe that you may have received this
communication in error, please reply to the sender indicating that fact and
delete the copy you received and in addition, you should not print, copy,
re-transmit, disseminate, or otherwise use the information contained in
this communication. Internet communications cannot be guaranteed to be
timely, secure, error or virus-free. The sender does not accept liability
for any errors or omissions.
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to