I saw TestSiddhiEvaluator failed after EAGLE-79 because of incompatibility of
message format sent to Siddhi engine.
In stream definition, it has the following schema without streamname
2016-01-12 11:30:09,312 INFO [main] siddhi.SiddhiPolicyEvaluator[114]: Siddhi
stream definition : define stream hdfsAuditLogEventStream(eagleAlertContext
object, allowed string,cmd string,dst string,host string,securityZone
string,sensitivityType string,src string,timestamp long,user string);
but when you send data, stream name is actually included. That is why we have
the following error.
Jan 12, 2016 11:30:10 AM com.lmax.disruptor.FatalExceptionHandler
handleEventException
SEVERE: Exception processing: 0 IndexedEvent{streamIndex=0,
event=Event{timestamp=1452627010124,
data=[org.apache.eagle.policy.PolicyEvaluationContext@3759beff,
hdfsAuditLogEventStream, true, open, , , , , , 1452627008910, ],
isExpired=false}}
java.lang.ArrayIndexOutOfBoundsException
at java.lang.System.arraycopy(Native Method)
at
org.wso2.siddhi.core.event.stream.converter.ZeroStreamEventConverter.convertToInnerStreamEvent(ZeroStreamEventConverter.java:28)
at
org.wso2.siddhi.core.event.stream.converter.ZeroStreamEventConverter.convertEvent(ZeroStreamEventConverter.java:34)
at
org.wso2.siddhi.core.event.stream.converter.ConversionStreamEventChunk.convertAndAssign(ConversionStreamEventChunk.java:46)
at
org.wso2.siddhi.core.query.input.ProcessStreamReceiver.receive(ProcessStreamReceiver.java:64)
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:128)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
Thanks
Edward