[
https://issues.apache.org/jira/browse/CALCITE-809?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14643353#comment-14643353
]
Julian Hyde commented on CALCITE-809:
-------------------------------------
I like the general approach -- however, your patch gives NPEs when I run
InterpreterTest. I haven't tried any other tests.
> 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
>
>
> 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)