[ 
https://issues.apache.org/jira/browse/CALCITE-1227?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15350458#comment-15350458
 ] 

Julian Hyde commented on CALCITE-1227:
--------------------------------------

I took [~zhenw]'s work in https://github.com/apache/calcite/pull/239, fixed up, 
and added cancel functionality. I strongly believe that cancel flag should be 
allocated at execute time, not prepare time, so I changed the code accordingly. 
I also added a test for cancel, and tried to reduce the duplication between 
CsvEnumerator and CsvStreamEnumerator. (It overlaps work going on in 
CALCITE-884, unfortunately.)

[~zhenw], Can you please review 
https://github.com/julianhyde/calcite/tree/1227-streaming-csv-table?

> Add streaming CSV table
> -----------------------
>
>                 Key: CALCITE-1227
>                 URL: https://issues.apache.org/jira/browse/CALCITE-1227
>             Project: Calcite
>          Issue Type: Bug
>            Reporter: Julian Hyde
>            Assignee: Julian Hyde
>
> Add a variant of CsvTable that can be streamed. It would serve as an example 
> of how to write stream adapters.
> It would be like the CSV adapter, but watches a file and reports records 
> added to the end of the file (like the tail command). 
> You’d have to change {{CsvTable}} to implement {{StreamableTable}}, and 
> implement the {{Table stream()}} method to return a variant of the table that 
> is in “follow” mode.
> It would probably be implemented by a variant of CsvEnumerator, but it is 
> getting its input in bursts, as the file is appended to.
> You would still be able to use this adapter to read historical data from the 
> CSV file. Appending records to the file would make a nice demo.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to