[
https://issues.apache.org/jira/browse/EAGLE-41?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15008487#comment-15008487
]
Libin, Sun commented on EAGLE-41:
---------------------------------
It's a siddhi bug, we have reported it to siddhi team,
According the jira, they has fixed it: https://wso2.org/jira/browse/CEP-1411,
but not mentioned which version
I've comment it their jira to ask about it
Previously we met a similar issue that the null field will cause the siddhi
thread crash, we work around it by do pre-check and set default value for null
field
For the type mismatch case, probably we can work around to do precheck and
discard invalid message before we upgrade siddhi cep engine
> Eagle Siddhi CEP Engine Bolt crash once caught with any bad message
> -------------------------------------------------------------------
>
> Key: EAGLE-41
> URL: https://issues.apache.org/jira/browse/EAGLE-41
> Project: Eagle
> Issue Type: Bug
> Reporter: Hao Chen
> Assignee: Hao Chen
>
> 2015-11-17 01:42:31 b.s.d.executor [INFO] Prepared bolt
> metricStreamExecutor_0:(8)
> 2015-11-17 01:42:55 STDIO [ERROR] Nov 17, 2015 1:42:55 AM
> com.lmax.disruptor.FatalExceptionHandler handleEventException
> SEVERE: Exception processing: 1 IndexedEvent{streamIndex=0,
> event=Event{timestamp=1447749775529,
> data=[eagle.alert.siddhi.EagleAlertContext@2ce1e618, NA,
> devdbx-003-12315.phx-os1.stratus.dev.ebay.com, freeSpace, shared,
> 1547664650590, 10], isExpired=false}}
> java.lang.ClassCastException: java.lang.String cannot be cast to
> java.lang.Double
> at
> org.wso2.siddhi.core.executor.condition.compare.less_than.LessThanCompareConditionExpressionExecutorDoubleInt.execute(LessThanCompareConditionExpressionExecutorDoubleInt.java:31)
> at
> org.wso2.siddhi.core.executor.condition.compare.CompareConditionExpressionExecutor.execute(CompareConditionExpressionExecutor.java:38)
> at
> org.wso2.siddhi.core.executor.condition.compare.CompareConditionExpressionExecutor.execute(CompareConditionExpressionExecutor.java:23)
> at
> org.wso2.siddhi.core.executor.condition.AndConditionExpressionExecutor.execute(AndConditionExpressionExecutor.java:53)
> at
> org.wso2.siddhi.core.executor.condition.AndConditionExpressionExecutor.execute(AndConditionExpressionExecutor.java:24)
> at
> org.wso2.siddhi.core.query.processor.filter.FilterProcessor.process(FilterProcessor.java:49)
> at
> org.wso2.siddhi.core.query.input.ProcessStreamReceiver.processAndClear(ProcessStreamReceiver.java:93)
> at
> org.wso2.siddhi.core.query.input.ProcessStreamReceiver.receive(ProcessStreamReceiver.java:65)
> at
> org.wso2.siddhi.core.stream.StreamJunction.sendEvent(StreamJunction.java:114)
> at
> org.wso2.siddhi.core.stream.StreamJunction$Publisher.send(StreamJunction.java:280)
> at
> org.wso2.siddhi.core.stream.input.InputDistributor.send(InputDistributor.java:32)
> at
> org.wso2.siddhi.core.stream.input.SingleThreadEntryValve.send(SingleThreadEntryValve.java:46)
> at
> org.wso2.siddhi.core.stream.input.SingleStreamEntryValve$SingleEntryValveHandler.sendEvents(SingleStreamEntryValve.java:152)
> at
> org.wso2.siddhi.core.stream.input.SingleStreamEntryValve$SingleEntryValveHandler.onEvent(SingleStreamEntryValve.java:140)
> at
> org.wso2.siddhi.core.stream.input.SingleStreamEntryValve$SingleEntryValveHandler.onEvent(SingleStreamEntryValve.java:110)
> at
> com.lmax.disruptor.BatchEventProcessor.run(BatchEventProcessor.java:113)
> 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-11-17 01:42:55 o.a.s.z.s.NIOServerCnxnFactory [ERROR] Thread
> Thread[Siddhi-cc2b5e49-00d8-43ea-bac6-c25d9b7e9332-executor-thread-0,5,main]
> died
> java.lang.RuntimeException: java.lang.ClassCastException: java.lang.String
> cannot be cast to java.lang.Double
> at
> com.lmax.disruptor.FatalExceptionHandler.handleEventException(FatalExceptionHandler.java:45)
> ~[disruptor-2.10.1.jar:na]
> at
> com.lmax.disruptor.BatchEventProcessor.run(BatchEventProcessor.java:128)
> ~[disruptor-2.10.1.jar:na]
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> ~[na:1.7.0_60]
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> ~[na:1.7.0_60]
> at java.lang.Thread.run(Thread.java:745) ~[na:1.7.0_60]
> Caused by: java.lang.ClassCastException: java.lang.String cannot be cast to
> java.lang.Double
> at
> org.wso2.siddhi.core.executor.condition.compare.less_than.LessThanCompareConditionExpressionExecutorDoubleInt.execute(LessThanCompareConditionExpressionExecutorDoubleInt.java:31)
> ~[stormjar.jar:na]
> at
> org.wso2.siddhi.core.executor.condition.compare.CompareConditionExpressionExecutor.execute(CompareConditionExpressionExecutor.java:38)
> ~[stormjar.jar:na]
> at
> org.wso2.siddhi.core.executor.condition.compare.CompareConditionExpressionExecutor.execute(CompareConditionExpressionExecutor.java:23)
> ~[stormjar.jar:na]
> at
> org.wso2.siddhi.core.executor.condition.AndConditionExpressionExecutor.execute(AndConditionExpressionExecutor.java:53)
> ~[stormjar.jar:na]
> at
> org.wso2.siddhi.core.executor.condition.AndConditionExpressionExecutor.execute(AndConditionExpressionExecutor.java:24)
> ~[stormjar.jar:na]
> at
> org.wso2.siddhi.core.query.processor.filter.FilterProcessor.process(FilterProcessor.java:49)
> ~[stormjar.jar:na]
> at
> org.wso2.siddhi.core.query.input.ProcessStreamReceiver.processAndClear(ProcessStreamReceiver.java:93)
> ~[stormjar.jar:na]
> at
> org.wso2.siddhi.core.query.input.ProcessStreamReceiver.receive(ProcessStreamReceiver.java:65)
> ~[stormjar.jar:na]
> at
> org.wso2.siddhi.core.stream.StreamJunction.sendEvent(StreamJunction.java:114)
> ~[stormjar.jar:na]
> at
> org.wso2.siddhi.core.stream.StreamJunction$Publisher.send(StreamJunction.java:280)
> ~[stormjar.jar:na]
> at
> org.wso2.siddhi.core.stream.input.InputDistributor.send(InputDistributor.java:32)
> ~[stormjar.jar:na]
> at
> org.wso2.siddhi.core.stream.input.SingleThreadEntryValve.send(SingleThreadEntryValve.java:46)
> ~[stormjar.jar:na]
> at
> org.wso2.siddhi.core.stream.input.SingleStreamEntryValve$SingleEntryValveHandler.sendEvents(SingleStreamEntryValve.java:152)
> ~[stormjar.jar:na]
> at
> org.wso2.siddhi.core.stream.input.SingleStreamEntryValve$SingleEntryValveHandler.onEvent(SingleStreamEntryValve.java:140)
> ~[stormjar.jar:na]
> at
> org.wso2.siddhi.core.stream.input.SingleStreamEntryValve$SingleEntryValveHandler.onEvent(SingleStreamEntryValve.java:110)
> ~[stormjar.jar:na]
> at
> com.lmax.disruptor.BatchEventProcessor.run(BatchEventProcessor.java:113)
> ~[disruptor-2.10.1.jar:na]
> ... 3 common frames omitted
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)