[jira] [Commented] (CALCITE-1114) Test compatibility kit (TCK) for streaming SQL
[ https://issues.apache.org/jira/browse/CALCITE-1114?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16359315#comment-16359315 ] Julian Hyde commented on CALCITE-1114: -- After some private conversations we have decided to develop this using in the [Stream-SQL-TCK|https://github.com/Stream-SQL-TCK/Stream-SQL-TCK] github repository for code and issues, and the calcite dev list for discussions. Read the [calcite dev thread|https://lists.apache.org/thread.html/94c87f4b75a0492a2c895c3baddbead3951ffc22394612837f6d039c@%3Cdev.calcite.apache.org%3E] announcing the initiative. > Test compatibility kit (TCK) for streaming SQL > -- > > Key: CALCITE-1114 > URL: https://issues.apache.org/jira/browse/CALCITE-1114 > Project: Calcite > Issue Type: Bug > Components: stream >Reporter: Julian Hyde >Assignee: Julian Hyde >Priority: Major > > Add a test compatibility kit (TCK) for streaming SQL. It would consist of > several test cases, and each test cases has a SQL query, and a sequence of > actions (sending rows into input streams) and expected outputs. > The TCK is an abstract class; each project that wants to use the TCK must > override the abstract class, providing a runner. The concrete class will > invoke each of the queries against the runner. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (CALCITE-1114) Test compatibility kit (TCK) for streaming SQL
[ https://issues.apache.org/jira/browse/CALCITE-1114?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15181868#comment-15181868 ] Julian Hyde commented on CALCITE-1114: -- As you can probably tell, this work is at an early stage. Also, you have to understand the nature of a TCK: it is a harness where you slot in an implementation, and the harness tells you whether the implementation is compliant. The harness does nothing at present, because there is no concrete implementation of StreamAssert. In Flink, you will need to create your own sub-class of StreamTckTest, and implement getTester to return an implementation of StreamAssert that does something useful. You could start on that now, if you like. I would like feedback on whether the {{input}}, {{send}}, {{expect}} methods are a good grammar with which to define tests. {{expect}} is tricky, because there is considerable freedom for when a streaming engine outputs rows, both in terms of timing (latency) and the ordering of those rows. {{expect}} should check for the minimum compliant behavior. Your challenge is to make Flink testable, without having to put timeouts all over the place or having tests fail because of non-deterministic behavior. Once we have agreed on a grammar we can start to write tests for various query patterns. Every query example in http://calcite.apache.org/docs/stream.html could become a test, and many more. > Test compatibility kit (TCK) for streaming SQL > -- > > Key: CALCITE-1114 > URL: https://issues.apache.org/jira/browse/CALCITE-1114 > Project: Calcite > Issue Type: Bug >Reporter: Julian Hyde >Assignee: Julian Hyde > > Add a test compatibility kit (TCK) for streaming SQL. It would consist of > several test cases, and each test cases has a SQL query, and a sequence of > actions (sending rows into input streams) and expected outputs. > The TCK is an abstract class; each project that wants to use the TCK must > override the abstract class, providing a runner. The concrete class will > invoke each of the queries against the runner. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CALCITE-1114) Test compatibility kit (TCK) for streaming SQL
[ https://issues.apache.org/jira/browse/CALCITE-1114?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15179701#comment-15179701 ] Vasia Kalavri commented on CALCITE-1114: Hey [~julianhyde], I'm working with the Flink community to add support for streaming SQL. Thanks for putting together this testing toolkit. It will really simplify our life :) I've checked out your branch and looked into the classes of the {{org.apache.calcite.test.stream}} package. Any guidance on how to proceed will be highly appreciated! -Vasia. > Test compatibility kit (TCK) for streaming SQL > -- > > Key: CALCITE-1114 > URL: https://issues.apache.org/jira/browse/CALCITE-1114 > Project: Calcite > Issue Type: Bug >Reporter: Julian Hyde >Assignee: Julian Hyde > > Add a test compatibility kit (TCK) for streaming SQL. It would consist of > several test cases, and each test cases has a SQL query, and a sequence of > actions (sending rows into input streams) and expected outputs. > The TCK is an abstract class; each project that wants to use the TCK must > override the abstract class, providing a runner. The concrete class will > invoke each of the queries against the runner. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CALCITE-1114) Test compatibility kit (TCK) for streaming SQL
[ https://issues.apache.org/jira/browse/CALCITE-1114?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15173391#comment-15173391 ] Julian Hyde commented on CALCITE-1114: -- Added a work-in-progress branch: https://github.com/julianhyde/calcite/tree/1114-stream-tck > Test compatibility kit (TCK) for streaming SQL > -- > > Key: CALCITE-1114 > URL: https://issues.apache.org/jira/browse/CALCITE-1114 > Project: Calcite > Issue Type: Bug >Reporter: Julian Hyde >Assignee: Julian Hyde > > Add a test compatibility kit (TCK) for streaming SQL. It would consist of > several test cases, and each test cases has a SQL query, and a sequence of > actions (sending rows into input streams) and expected outputs. > The TCK is an abstract class; each project that wants to use the TCK must > override the abstract class, providing a runner. The concrete class will > invoke each of the queries against the runner. -- This message was sent by Atlassian JIRA (v6.3.4#6332)