Uploaded image for project: 'Hive'
  1. Hive
  2. HIVE-12462

DPP: DPP optimizers need to run on the TS predicate not FIL

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Blocker
    • Resolution: Invalid
    • 2.0.0
    • 2.0.0
    • Tez
    • None

    Description

      HIVE-11398 + HIVE-11791, the partition-condition-remover became more effective.

      This removes predicates from the FilterExpression which involve partition columns, causing a miss for dynamic-partition pruning if the DPP relies on FilterDesc.

      The TS desc will have the correct predicate in that condition.

      $hdt$_0:$hdt$_1:a
        TableScan (TS_2)
          alias: a
          filterExpr: (((account_id = 22) and year(dt) is not null) and (year(dt)) IN (RS[6])) (type: boolean)
          Filter Operator (FIL_20)
            predicate: ((account_id = 22) and year(dt) is not null) (type: boolean)
            Select Operator (SEL_4)
              expressions: dt (type: date)
              outputColumnNames: _col1
              Reduce Output Operator (RS_8)
                key expressions: year(_col1) (type: int)
                sort order: +
                Map-reduce partition columns: year(_col1) (type: int)
                Join Operator (JOIN_9)
                  condition map:
                       Inner Join 0 to 1
                  keys:
                    0 year(_col1) (type: int)
                    1 year(_col1) (type: int)
      

      Attachments

        1. HIVE-12462.02.patch
          18 kB
          Sergey Shelukhin
        2. HIVE-12462.1.patch
          2 kB
          Gopal Vijayaraghavan

        Issue Links

          Activity

            People

              gopalv Gopal Vijayaraghavan
              gopalv Gopal Vijayaraghavan
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: