Re: [QUESTION] Pushing up evaluations from LogicalProjects

2019-10-15 Thread Danny Chan
that is > > > > not a simple mapping, and do the same task I mentioned above. > > > > > > > > - Haisheng > > > > > > > > -- > > > > 发件人:Rommel Quintanilla > >

Re: [QUESTION] Pushing up evaluations from LogicalProjects

2019-10-15 Thread Rommel Quintanilla
r hand, instead of creating a new intermidiate pogical > > project, > > > we can also update ProjectTableScanRule to accept LogicalProject that is > > > not a simple mapping, and do the same task I mentioned above. > > > > > > - Haisheng > > > >

Re: [QUESTION] Pushing up evaluations from LogicalProjects

2019-10-15 Thread XING JIN
> Haisheng Yuan 于2019年10月12日周六 上午4:34写道: > > > > > > > > > Yes, definitely. > > > > > > > > > > You can go through the project expression with InputFinder to find > all > > > > the > > > > > used columns, create

Re: [QUESTION] Pushing up evaluations from LogicalProjects

2019-10-15 Thread Rommel Quintanilla
> > > > > On the other hand, instead of creating a new intermidiate pogical > > > project, > > > > we can also update ProjectTableScanRule to accept LogicalProject that > > is > > > > not a simple mapping, and do the same task I mentioned above. > > > > >

Re: Re: Re: [QUESTION] Pushing up evaluations from LogicalProjects

2019-10-14 Thread XING JIN
I mean, testPushNonSimpleMappingProject [1] runs with RelFieldTrimmer enabled, which is done by [2] [1] https://github.com/apache/calcite/pull/1500/files#diff-3c834a32d46b821b5241e132f2ae6bfaR324 [2]

Re: Re: Re: [QUESTION] Pushing up evaluations from LogicalProjects

2019-10-14 Thread XING JIN
Yes, that's how testPushNonSimpleMappingProject [1] works [1] https://github.com/apache/calcite/pull/1500/files#diff-3c834a32d46b821b5241e132f2ae6bfaR324 Danny Chan 于2019年10月14日周一 下午3:36写道: > > But why the final BindableTableScan is not pruned ? > > The RelFieldTrimmer default is turned off,

Re: Re: Re: [QUESTION] Pushing up evaluations from LogicalProjects

2019-10-14 Thread Danny Chan
> But why the final BindableTableScan is not pruned ? The RelFieldTrimmer default is turned off, you should open it explicitly. Best, Danny Chan 在 2019年10月14日 +0800 AM11:51,dev@calcite.apache.org,写道: > > BINDABLE_TABLE_SCAN_RULE

Re: Re: Re: [QUESTION] Pushing up evaluations from LogicalProjects

2019-10-13 Thread XING JIN
Also regarding that Projects merging is common in Calcite optimization rules, we should always remember to avoid merging for cases like the one given by Rommel. I think that would be hard. Best, Jin XING JIN 于2019年10月14日周一 上午11:51写道: > Hi, Stamatis, Danny~ > > Thanks for explain ~ > > > "The

Re: Re: Re: [QUESTION] Pushing up evaluations from LogicalProjects

2019-10-13 Thread XING JIN
Hi, Stamatis, Danny~ Thanks for explain ~ > "The consumer in the case of P1 is the project which only needs $0, $2, $5, $6 so the trimmer could slim down the scan by projecting only these fields." I think RelFieldTrimmer is already doing this by [1]. But why the final BindableTableScan is not

Re: Re: Re: [QUESTION] Pushing up evaluations from LogicalProjects

2019-10-13 Thread Danny Chan
+1, RelFieldTrimmer is the role to trim the unused fields. Best, Danny Chan 在 2019年10月13日 +0800 AM6:25,dev@calcite.apache.org,写道: > > RelFieldTrimmer

Re: [QUESTION] Pushing up evaluations from LogicalProjects

2019-10-13 Thread Wang Yanlin
rote: > >> >> > >> >> > Filed a JIRA: > >> >> > https://issues.apache.org/jira/browse/CALCITE-3405 > >> >> > > >> >> > Haisheng Yuan 于2019年10月12日周六 上午4:34写道: > >> >> > > >> &

Re: Re: Re: [QUESTION] Pushing up evaluations from LogicalProjects

2019-10-12 Thread Stamatis Zampetakis
> Filed a JIRA: > >> >> > https://issues.apache.org/jira/browse/CALCITE-3405 > >> >> > > >> >> > Haisheng Yuan 于2019年10月12日周六 上午4:34写道: > >> >> > > >> >> > > Yes, definitely. > >> >> > > > >> >> > > You can go through the pr

Re:Re: Re: [QUESTION] Pushing up evaluations from LogicalProjects

2019-10-12 Thread Wang Yanlin
ough the project expression with InputFinder to find >> all >> >> > the >> >> > > used columns, create a logical project with those columns, and >> remap >> >> the >> >> > > top project with new column indexes. >> >&

Re: Re: [QUESTION] Pushing up evaluations from LogicalProjects

2019-10-12 Thread XING JIN
op project with new column indexes. > >> > > > >> > > On the other hand, instead of creating a new intermidiate pogical > >> > project, > >> > > we can also update ProjectTableScanRule to accept LogicalProject > that > >>

Re:Re: [QUESTION] Pushing up evaluations from LogicalProjects

2019-10-12 Thread Wang Yanlin
es. >> > > >> > > On the other hand, instead of creating a new intermidiate pogical >> > project, >> > > we can also update ProjectTableScanRule to accept LogicalProject that >> is >> > > not a simple mapping, and do the same task

Re: [QUESTION] Pushing up evaluations from LogicalProjects

2019-10-12 Thread XING JIN
ting a new intermidiate pogical > > project, > > > we can also update ProjectTableScanRule to accept LogicalProject that > is > > > not a simple mapping, and do the same task I mentioned above. > > > > > > - Haisheng > > > > > > --

Re: [QUESTION] Pushing up evaluations from LogicalProjects

2019-10-12 Thread Stamatis Zampetakis
simple mapping, and do the same task I mentioned above. > > > > - Haisheng > > > > -------------- > > 发件人:Rommel Quintanilla > > 日 期:2019年10月12日 03:15:31 > > 收件人: > > 主 题:[QUESTION] Pushin

Re: [QUESTION] Pushing up evaluations from LogicalProjects

2019-10-11 Thread XING JIN
ioned above. > > - Haisheng > > -- > 发件人:Rommel Quintanilla > 日 期:2019年10月12日 03:15:31 > 收件人: > 主 题:[QUESTION] Pushing up evaluations from LogicalProjects > > Hi, maybe you can help me. > I have this portion from a larger logical plan: > .. &g

Re: [QUESTION] Pushing up evaluations from LogicalProjects

2019-10-11 Thread Haisheng Yuan
update ProjectTableScanRule to accept LogicalProject that is not a simple mapping, and do the same task I mentioned above. - Haisheng -- 发件人:Rommel Quintanilla 日 期:2019年10月12日 03:15:31 收件人: 主 题:[QUESTION] Pushing up evaluations from

[QUESTION] Pushing up evaluations from LogicalProjects

2019-10-11 Thread Rommel Quintanilla
Hi, maybe you can help me. I have this portion from a larger logical plan: .. LogicalProject(l_orderkey=[$0], l_suppkey=[$2], *=[*($5, -(1, $6))]) LogicalTableScan(table=[[main, lineitem]]) .. Because the LogicalProject above contains an evaluation, the