partition pruning prune some right partition under specific conditions -----------------------------------------------------------------------
Key: HIVE-2497 URL: https://issues.apache.org/jira/browse/HIVE-2497 Project: Hive Issue Type: Bug Affects Versions: 0.7.1 Reporter: binlijin Fix For: 0.9.0 create table src3(key string, value string) partitioned by (pt string) row format delimited fields terminated by ','; ALTER TABLE src3 ADD IF NOT EXISTS PARTITION (pt='20110911000000') ; ALTER TABLE src3 ADD IF NOT EXISTS PARTITION (pt='20110912000000') ; ALTER TABLE src3 ADD IF NOT EXISTS PARTITION (pt='20110913000000') ; explain extended select user_id from ( select cast(key as int) as user_id ,case when (value like 'aaa%' or value like 'vvv%') then 1 else 0 end as tag_student from src3 ) sub where sub.tag_student > 0; STAGE DEPENDENCIES: Stage-1 is a root stage Stage-0 is a root stage STAGE PLANS: Stage: Stage-1 Map Reduce Alias -> Map Operator Tree: sub:src3 TableScan alias: src3 Filter Operator isSamplingPred: false predicate: expr: (CASE WHEN (((value like 'aaa%') or (value like 'vvv%'))) THEN (1) ELSE (0) END > 0) type: boolean Select Operator expressions: expr: UDFToInteger(key) type: int expr: CASE WHEN (((value like 'aaa%') or (value like 'vvv%'))) THEN (1) ELSE (0) END type: int outputColumnNames: _col0, _col1 Filter Operator isSamplingPred: false predicate: expr: (_col1 > 0) type: boolean Select Operator expressions: expr: _col0 type: int outputColumnNames: _col0 File Output Operator compressed: false GlobalTableId: 0 directory: hdfs://localhost:54310/tmp/hive-tianzhao/hive_2011-10-11_19-26-12_894_9085644225727185586/-ext-10001 NumFilesPerFileSink: 1 table: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat properties: columns _col0 columns.types int serialization.format 1 TotalFiles: 1 MultiFileSpray: false Needs Tagging: false Stage: Stage-0 Fetch Operator limit: -1 if we set hive.optimize.ppd=false; STAGE DEPENDENCIES: Stage-1 is a root stage Stage-0 is a root stage STAGE PLANS: Stage: Stage-1 Map Reduce Alias -> Map Operator Tree: sub:src3 TableScan alias: src3 Select Operator expressions: expr: UDFToInteger(key) type: int expr: CASE WHEN (((value like 'aaa%') or (value like 'vvv%'))) THEN (1) ELSE (0) END type: int outputColumnNames: _col0, _col1 Filter Operator isSamplingPred: false predicate: expr: (_col1 > 0) type: boolean Select Operator expressions: expr: _col0 type: int outputColumnNames: _col0 File Output Operator compressed: false GlobalTableId: 0 directory: hdfs://localhost:54310/tmp/hive-tianzhao/hive_2011-10-11_19-27-22_527_1729287213481398480/-ext-10001 NumFilesPerFileSink: 1 table: input format: org.apache.hadoop.mapred.TextInputFormat output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat properties: columns _col0 columns.types int serialization.format 1 TotalFiles: 1 MultiFileSpray: false Needs Tagging: false Path -> Alias: hdfs://localhost:54310/user/hive/warehouse/src3/pt=20110911000000 [sub:src3] hdfs://localhost:54310/user/hive/warehouse/src3/pt=20110912000000 [sub:src3] hdfs://localhost:54310/user/hive/warehouse/src3/pt=20110913000000 [sub:src3] Path -> Partition: hdfs://localhost:54310/user/hive/warehouse/src3/pt=20110911000000 Partition base file name: pt=20110911000000 -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira