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 2018/08/16 07:32:00 UTC
[jira] [Created] (CALCITE-2470) RelBuilder.project should combine
expressions if underlying node is a Project
Julian Hyde created CALCITE-2470:
------------------------------------
Summary: RelBuilder.project should combine expressions if underlying node is a Project
Key: CALCITE-2470
URL: https://issues.apache.org/jira/browse/CALCITE-2470
Project: Calcite
Issue Type: Bug
Reporter: Julian Hyde
Assignee: Julian Hyde
The {{RelBuilder.project}} method should combine expressions if underlying node is a {{Project}}.
For example, if {{r}} is a {{RelBuilder}} and its stack initially contains
{code:java}
Project(Scan(T), a, b, a + b as c){code}
and we call (in pseudo-code)
{code:java}
r.project(a + c as d){code}
then the result should be
{code:java}
Project(Scan(T), a + (a + b) as d){code}
Today the result is
{code:java}
Project(Project(Scan(T), a, a + b as c), a + c as d){code}
In some circumstances the result will be larger (i.e. contain more {{RexNode}} instances) but much more frequently the result will be smaller and simpler.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)