[ 
https://issues.apache.org/jira/browse/CALCITE-809?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jesse Yates updated CALCITE-809:
--------------------------------
    Attachment: calcite-803-v1.patch

Cool, was just going for feedback and a basic test pass on a stream.

Attaching patch rebased on latest master that fixes tests for me, locally.. 
well aside from:
 -  getting an unexpected error in JdbcFrontJdbcBackTest that goes away when 
run independently... can't really explain that one.
 - having to change StreamTest plans to expect a LogicalTableScan, rather than 
an EnumerableTableScan, which wasn't necessary until rebasing

thoughts? thanks for taking a look [~julianhyde]

> TableScan does not support large/infinite scans
> -----------------------------------------------
>
>                 Key: CALCITE-809
>                 URL: https://issues.apache.org/jira/browse/CALCITE-809
>             Project: Calcite
>          Issue Type: Bug
>          Components: core
>            Reporter: Jesse Yates
>            Assignee: Julian Hyde
>         Attachments: calcite-803-v0.patch, calcite-803-v1.patch
>
>
> When running a simple query (e.g. select stream * from orders) and the 
> StreamableTable returning a Enumerable<Object[]> backed by an infinite 
> stream, you end up quickly trying to store all the values of the stream in a 
> ListSink in a TableScanNode.
> From Julian:
> {quote}
> You're hitting the interpreter "cheap and dirty"
> implementation of TableScan. I made the interpreter the simplest thing
> that could possibly work, so I made every operator build a list. (I
> know, I know. Enumerable uses iterators, and other implementations do
> even better. But I wanted to fit it into one page of code.)
> ...
> The solution will be either to fix the interpreter to use iterators
> (or similar) rather than lists, or to recognize that a query is
> infinite and not use the interpreter.
> {quote}



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

Reply via email to