Uploaded image for project: 'IMPALA'
  1. IMPALA
  2. IMPALA-11008

Invalid to propagate inferred predicates into the nullable side of an outer join

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • Impala 3.1.0, Impala 3.2.0, Impala 4.0.0, Impala 3.4.0
    • Impala 4.1.0
    • Frontend
    • ghx-label-3

    Description

      Query: explain select * from (
       select case when id is not null and some_nulls is null then true else null end a from (select straight_join t1.id, t2.some_nulls from functional.nullrows t1 left join functional.nullrows t2 on t1.id=t2.id) t)t where a is not null
      Max Per-Host Resource Reservation: Memory=1.95MB Threads=3
      Per-Host Resource Estimates: Memory=66MB
      Codegen disabled by planner
      ""
      PLAN-ROOT SINK
      |
      02:HASH JOIN [LEFT OUTER JOIN]
      |  hash predicates: t1.id = t2.id
      |  other predicates: CASE WHEN t1.id IS NOT NULL AND t2.some_nulls IS NULL THEN TRUE ELSE NULL END IS NOT NULL
      |  row-size=39B cardinality=26
      |
      |--01:SCAN HDFS [functional.nullrows t2]
      |     partitions=1/1 files=1 size=541B
      |     predicates: CASE WHEN t2.id IS NOT NULL AND t2.some_nulls IS NULL THEN TRUE ELSE NULL END IS NOT NULL
      |     row-size=26B cardinality=3
      |
      00:SCAN HDFS [functional.nullrows t1]
         partitions=1/1 files=1 size=541B
         row-size=13B cardinality=26 

      It  is incorrect to propagate this inferred predicates into a plan subtree that is on the nullable side of an outer join.

       

      Attachments

        Issue Links

          Activity

            People

              xqhe Xianqing He
              xqhe Xianqing He
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: