You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Julian Hyde (JIRA)" <ji...@apache.org> on 2019/03/20 19:15:00 UTC

[jira] [Commented] (CALCITE-2937) Linq4j: implement LazyEnumerable

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

Julian Hyde commented on CALCITE-2937:
--------------------------------------

An {{Enumerable}} is basically a supplier of an {{Enumerator}}. So, this seems to be adding another level of indirection, which is not necessary. 

Is there a way to finesse this, with a 2-line sub-class of {{AbstractEnumerable}} or {{AbstractEnumerable2}}?

> Linq4j: implement LazyEnumerable
> --------------------------------
>
>                 Key: CALCITE-2937
>                 URL: https://issues.apache.org/jira/browse/CALCITE-2937
>             Project: Calcite
>          Issue Type: New Feature
>            Reporter: Ruben Quesada Lopez
>            Assignee: Ruben Quesada Lopez
>            Priority: Major
>              Labels: pull-request-available
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> Implement a LazyEnumerable: an  Enumerable whose computation (via a Supplier) will be postponed until it is actually required.
> An example of use case could be CALCITE-2909, where a semiJoin implementation can be optimized by delaying the computation of the innerLookup until the moment when we are sure that it will be really needed, i.e. when the first outer enumerator item is processed.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)