calcite-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Aman Sinha (Jira)" <j...@apache.org>
Subject [jira] [Created] (CALCITE-3390) ITEM expression does not get pushed to the right input of left-outer-join
Date Mon, 07 Oct 2019 17:59:00 GMT
Aman Sinha created CALCITE-3390:
-----------------------------------

             Summary: ITEM expression does not get pushed to the right input of left-outer-join
                 Key: CALCITE-3390
                 URL: https://issues.apache.org/jira/browse/CALCITE-3390
             Project: Calcite
          Issue Type: Bug
          Components: core
    Affects Versions: 1.21.0
            Reporter: Aman Sinha
            Assignee: Aman Sinha


In the following query, the ITEM expression above the Left Outer Join does not get pushed
to the right input (null-preserving input) of the join whereas it should since ITEM does not
change the nullability.  

{noformat}
explain plan without implementation for select tt7.columns[0], tt8.columns[0] as x from tt7
left outer join tt8  on tt7.columns[0] = tt8.columns[0];

 DrillScreenRel
  DrillProjectRel(EXPR$0=[$1], x=[ITEM($2, 0)])
    DrillJoinRel(condition=[=($0, $3)], joinType=[left])
      DrillProjectRel($f2=[ITEM($0, 0)], ITEM=[ITEM($0, 0)])
        DrillScanRel(table=[[dfs, tmp, tt7]], groupscan=[EasyGroupScan [selectionRoot=file:/tmp/tt7,
numFiles=1, columns=[`columns`[0]], files=[file:/tmp/tt7/0_0_0.csv]]])
      DrillProjectRel(columns=[$0], $f2=[ITEM($0, 0)])
        DrillScanRel(table=[[dfs, tmp, tt8]], groupscan=[EasyGroupScan [selectionRoot=file:/tmp/tt8,
numFiles=1, columns=[`columns`, `columns`[0]], files=[file:/tmp/tt8/0_0_0.csv]]])
{noformat}

>From what I can tell, the change in behavior occurred with  https://issues.apache.org/jira/browse/CALCITE-1753
; before that the ITEM was pushed on both sides of the Left Outer Join. 




--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Mime
View raw message