WSO2 CEP执行计划错误
我刚开始测试WSO2 CEP。我使用的是3.1.0版 我用一个单属性事件和一个非常简单的查询完成了第一个成功的测试。 但是没有,我已经试着让测试更真实一些,并为我的事件添加了更多属性,以及一个更复杂的查询。执行计划XML文件副本位于我的消息末尾 我不明白为什么查询中的“insert into so”语句会产生一条错误消息,指出输出流定义了两次。实际上,流是导出的 当我删除“insert into so”时,计划已部署,但没有事件传出 知道我没有按预期做什么吗 谢谢你的帮助 问候 XML文件:WSO2 CEP执行计划错误,wso2,complex-event-processing,Wso2,Complex Event Processing,我刚开始测试WSO2 CEP。我使用的是3.1.0版 我用一个单属性事件和一个非常简单的查询完成了第一个成功的测试。 但是没有,我已经试着让测试更真实一些,并为我的事件添加了更多属性,以及一个更复杂的查询。执行计划XML文件副本位于我的消息末尾 我不明白为什么查询中的“insert into so”语句会产生一条错误消息,指出输出流定义了两次。实际上,流是导出的 当我删除“insert into so”时,计划已部署,但没有事件传出 知道我没有按预期做什么吗 谢谢你的帮助 问候 XML文件: &
<?xml version="1.0" encoding="UTF-8"?>
<executionPlan name="Fifi_Test_Execution_Plan_1" statistics="enable"
trace="enable" xmlns="http://wso2.org/carbon/eventprocessor">
<description/>
<siddhiConfiguration>
<property name="siddhi.persistence.snapshot.time.interval.minutes">0</property>
<property name="siddhi.enable.distributed.processing">false</property>
</siddhiConfiguration>
<importedStreams>
<stream as="si" name="Fifi_Test_Event_Stream_1" version="1.0.0"/>
</importedStreams>
<queryExpressions><![CDATA[
from si#window.timeBatch(10 sec)
select code, count(code) as number, sum(value) as total
group by code
insert into so;
]]></queryExpressions>
<exportedStreams>
<stream name="Fifi_Test_Event_Stream_2" valueOf="so" version="1.0.0"/>
</exportedStreams>
</executionPlan>
上述问题的原因仅通过例外情况表达。下面是该问题的更详细原因 我认为,最初您已经创建了一个执行计划,该计划将事件导出到流“Fifi_Test_Event_stream_2”。此流包含以下属性: attributeList=[Attribute{name='code',type=STRING},Attribute{name='number',type=LONG},Attribute{name='total',type=INT}] 但是,现在您已经编写了另一个查询来计算总和,在计算完总和之后,您已经将这些事件导出到同一个流“Fifi_Test_Event_stream_2”(流“so”只是流“fififi_Test_Event_stream_2”的别名) 由于您正在计算总和,所以导出的流包含以下类型的属性 [属性{name='code',type=STRING},属性{name='number',type=LONG},属性{name='total',type=LONG}]
然后,您不能将这些事件转发到流“Fifi\u测试\u事件\u流\u 2” 谢谢你的解释。但我不明白我必须做些什么才能“取消”前一个流,导出新的流,并使用生成的别名发送我的输出事件(插入so)。。。再次感谢。很抱歉再次光临!我刚刚在我的流中将total属性类型从int改为long,并重新激活了执行计划,它成功了!所以,谢谢你的帮助。。。当做
Exception: Invalid query specified, Stream so is already defined as StreamDefinition{streamId='so', attributeList=[Attribute{name='code', type=STRING}, Attribute{name='number', type=LONG}, Attribute{name='total', type=INT}]}, hence cannot define StreamDefinition{streamId='so', attributeList=[Attribute{name='code', type=STRING}, Attribute{name='number', type=LONG}, Attribute{name='total', type=LONG}]}