[ https://issues.apache.org/jira/browse/HIVE-1989?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13096627#comment-13096627 ]
Hudson commented on HIVE-1989: ------------------------------ Integrated in Hive-trunk-h0.21 #931 (See [https://builds.apache.org/job/Hive-trunk-h0.21/931/]) HIVE-1989. Recognize transitivity of predicates on join keys (Charles Chen via jvs) jvs : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1164804 Files : * /hive/trunk/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java * /hive/trunk/conf/hive-default.xml * /hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ColumnPrunerProcFactory.java * /hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/ppd/ExprWalkerProcFactory.java * /hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/ppd/OpProcFactory.java * /hive/trunk/ql/src/test/results/clientpositive/auto_join16.q.out * /hive/trunk/ql/src/test/results/clientpositive/auto_join8.q.out * /hive/trunk/ql/src/test/results/clientpositive/cluster.q.out * /hive/trunk/ql/src/test/results/clientpositive/index_auto_mult_tables.q.out * /hive/trunk/ql/src/test/results/clientpositive/index_auto_mult_tables_compact.q.out * /hive/trunk/ql/src/test/results/clientpositive/join16.q.out * /hive/trunk/ql/src/test/results/clientpositive/join38.q.out * /hive/trunk/ql/src/test/results/clientpositive/join8.q.out * /hive/trunk/ql/src/test/results/clientpositive/louter_join_ppr.q.out * /hive/trunk/ql/src/test/results/clientpositive/outer_join_ppr.q.out * /hive/trunk/ql/src/test/results/clientpositive/ppd_clusterby.q.out * /hive/trunk/ql/src/test/results/clientpositive/ppd_gby_join.q.out * /hive/trunk/ql/src/test/results/clientpositive/ppd_join.q.out * /hive/trunk/ql/src/test/results/clientpositive/ppd_join2.q.out * /hive/trunk/ql/src/test/results/clientpositive/ppd_join3.q.out * /hive/trunk/ql/src/test/results/clientpositive/ppd_outer_join1.q.out * /hive/trunk/ql/src/test/results/clientpositive/ppd_outer_join2.q.out * /hive/trunk/ql/src/test/results/clientpositive/ppd_outer_join3.q.out * /hive/trunk/ql/src/test/results/clientpositive/ppd_outer_join4.q.out * /hive/trunk/ql/src/test/results/clientpositive/ppd_outer_join5.q.out * /hive/trunk/ql/src/test/results/clientpositive/ppd_udf_case.q.out * /hive/trunk/ql/src/test/results/clientpositive/ppd_union.q.out * /hive/trunk/ql/src/test/results/clientpositive/router_join_ppr.q.out * /hive/trunk/ql/src/test/results/clientpositive/smb_mapjoin9.q.out * /hive/trunk/ql/src/test/results/clientpositive/smb_mapjoin_6.q.out * /hive/trunk/ql/src/test/results/clientpositive/udf_named_struct.q.out * /hive/trunk/ql/src/test/results/clientpositive/union22.q.out * /hive/trunk/ql/src/test/results/compiler/plan/join1.q.xml * /hive/trunk/ql/src/test/results/compiler/plan/join2.q.xml * /hive/trunk/ql/src/test/results/compiler/plan/join3.q.xml * /hive/trunk/ql/src/test/results/compiler/plan/join8.q.xml * /hive/trunk/ql/src/test/results/compiler/plan/sample1.q.xml * /hive/trunk/ql/src/test/results/compiler/plan/sample2.q.xml * /hive/trunk/ql/src/test/results/compiler/plan/sample3.q.xml * /hive/trunk/ql/src/test/results/compiler/plan/sample4.q.xml * /hive/trunk/ql/src/test/results/compiler/plan/sample5.q.xml * /hive/trunk/ql/src/test/results/compiler/plan/sample6.q.xml * /hive/trunk/ql/src/test/results/compiler/plan/sample7.q.xml * /hive/trunk/ql/src/test/results/compiler/plan/subq.q.xml * /hive/trunk/ql/src/test/results/compiler/plan/udf1.q.xml * /hive/trunk/ql/src/test/results/compiler/plan/udf4.q.xml * /hive/trunk/ql/src/test/results/compiler/plan/udf6.q.xml * /hive/trunk/ql/src/test/results/compiler/plan/udf_case.q.xml * /hive/trunk/ql/src/test/results/compiler/plan/udf_when.q.xml * /hive/trunk/ql/src/test/results/compiler/plan/union.q.xml > recognize transitivity of predicates on join keys > ------------------------------------------------- > > Key: HIVE-1989 > URL: https://issues.apache.org/jira/browse/HIVE-1989 > Project: Hive > Issue Type: Improvement > Components: Query Processor > Affects Versions: 0.6.0 > Reporter: John Sichi > Assignee: Charles Chen > Fix For: 0.9.0 > > Attachments: HIVE-1989v1.patch, HIVE-1989v10.patch, > HIVE-1989v11.patch, HIVE-1989v12.patch, HIVE-1989v4.patch, > HIVE-1989v5-WITH-HIVE-2382v1.patch, HIVE-1989v6-WITH-HIVE-2383v1.patch, > HIVE-1989v8.patch, HIVE-1989v9.patch > > > Given > {noformat} > set hive.mapred.mode=strict; > create table invites (foo int, bar string) partitioned by (ds string); > create table invites2 (foo int, bar string) partitioned by (ds string); > select count(*) from invites join invites2 on invites.ds=invites2.ds where > invites.ds='2011-01-01'; > {noformat} > currently an error occurs: > {noformat} > Error in semantic analysis: No Partition Predicate Found for Alias "invites2" > Table "invites2" > {noformat} > The optimizer should be able to infer a predicate on invites2 via > transitivity. The current lack places a burden on the user to add a > redundant predicate, and makes impossible (at least in strict mode) join > views where both underlying tables are partitioned (the join select list has > to pick one of the tables arbitrarily). -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira