Java Siddhi是否无法按多个变量分组?

Java Siddhi是否无法按多个变量分组?,java,wso2,siddhi,Java,Wso2,Siddhi,我有以下流定义: 字符串eventStreamDefinition= 定义流cdrEventStream节点ID字符串、电话字符串、时间戳长度、isOutgoingCall bool 以及查询: String query=@infoname='query1'来自cdrEventStreamwindow。externalTimetimeStamp,5秒选择nodeId,phone,timeStamp,isOutgoingCall,countnodeId作为callCount group by ph

我有以下流定义:

字符串eventStreamDefinition= 定义流cdrEventStream节点ID字符串、电话字符串、时间戳长度、isOutgoingCall bool

以及查询:

String query=@infoname='query1'来自cdrEventStreamwindow。externalTimetimeStamp,5秒选择nodeId,phone,timeStamp,isOutgoingCall,countnodeId作为callCount group by phone,isOutgoingCall将所有事件插入outputStream

但当我试图编译它们时,我得到:

org.wso2.siddhi.query.compiler.exception.SiddhiParserException: You have an error in your SiddhiQL at line 1:267, extraneous input ',' expecting {'#', STREAM, DEFINE, TABLE, FROM, PARTITION, WINDOW, SELECT, GROUP, BY, HAVING, INSERT, DELETE, UPDATE, RETURN, EVENTS, INTO, OUTPUT, EXPIRED, CURRENT, SNAPSHOT, FOR, RAW, OF, AS, OR, AND, ON, IS, NOT, WITHIN, WITH, BEGIN, END, NULL, EVERY, LAST, ALL, FIRST, JOIN, INNER, OUTER, RIGHT, LEFT, FULL, UNIDIRECTIONAL, YEARS, MONTHS, WEEKS, DAYS, HOURS, MINUTES, SECONDS, MILLISECONDS, FALSE, TRUE, STRING, INT, LONG, FLOAT, DOUBLE, BOOL, OBJECT, ID_QUOTES, ID}
    at org.wso2.siddhi.query.compiler.internal.SiddhiErrorListener.syntaxError(SiddhiErrorListener.java:34)
    at org.antlr.v4.runtime.ProxyErrorListener.syntaxError(ProxyErrorListener.java:65)
    at org.antlr.v4.runtime.Parser.notifyErrorListeners(Parser.java:558)
    at org.antlr.v4.runtime.DefaultErrorStrategy.reportUnwantedToken(DefaultErrorStrategy.java:377)
    at org.antlr.v4.runtime.DefaultErrorStrategy.sync(DefaultErrorStrategy.java:275)
    at org.wso2.siddhi.query.compiler.SiddhiQLParser.group_by(SiddhiQLParser.java:3783)
    at org.wso2.siddhi.query.compiler.SiddhiQLParser.query_section(SiddhiQLParser.java:3713)
    at org.wso2.siddhi.query.compiler.SiddhiQLParser.query(SiddhiQLParser.java:1903)
    at org.wso2.siddhi.query.compiler.SiddhiQLParser.execution_element(SiddhiQLParser.java:619)
    at org.wso2.siddhi.query.compiler.SiddhiQLParser.execution_plan(SiddhiQLParser.java:550)
    at org.wso2.siddhi.query.compiler.SiddhiQLParser.parse(SiddhiQLParser.java:152)
    at org.wso2.siddhi.query.compiler.SiddhiCompiler.parse(SiddhiCompiler.java:61)
    at org.wso2.siddhi.core.SiddhiManager.createExecutionPlanRuntime(SiddhiManager.java:59)
要编译查询,唯一的方法是从GROUPBY子句中删除isOutgoingCall。Siddhi文档指出,应该可以通过多个变量进行分组。这是虫子吗


这在版本3.0.0-alpha上。Siddhi 3.0.0支持通过多个变量进行分组。我刚刚用Siddhi 3.0.0检查了您的查询,并且能够编译它。当然,我用的是3.0.0版。你能试试吗


提示:您可以使用在插入后按分组来轻松尝试查询

。。。进入outputStream?不,不起作用。无论如何,通过升级到3.0.3解决了这个问题。谢谢