----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/489/ -----------------------------------------------------------
(Updated 2011-03-21 16:02:55.219077) Review request for hive. Changes ------- The new patch's major change is to move the checkJDOPushDown after compactExpr. Previously checkJDOPushDown checks the original prunerExpr. If prunerExpr contains non-partition columns and there are functions other than {=,AND, OR}, this predicate is not qualified for JDO push down. After moving to applying checkJDOPushDown to compactExpr, expressions are qualified as long as the subexpression that contains only partition columns contains {=, AND, OR}. Summary ------- * expose HiveMetaStoreClient.listPartitionsByFilter() to Hive.java so that PartitionPruner can use that for certain partition predicates. * only allows {=, AND, OR} in the partition predicates that can be pushed down to JDO filtering. Diffs (updated) ----- trunk/metastore/src/java/org/apache/hadoop/hive/metastore/IMetaStoreClient.java 1083890 trunk/metastore/src/java/org/apache/hadoop/hive/metastore/ObjectStore.java 1083890 trunk/metastore/src/java/org/apache/hadoop/hive/metastore/parser/ExpressionTree.java 1083890 trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/Utilities.java 1083890 trunk/ql/src/java/org/apache/hadoop/hive/ql/metadata/Hive.java 1083890 trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ppr/PartitionPruner.java 1083890 trunk/ql/src/test/queries/clientpositive/ppr_pushdown.q PRE-CREATION trunk/ql/src/test/queries/clientpositive/ppr_pushdown2.q PRE-CREATION trunk/ql/src/test/results/clientpositive/ppr_pushdown.q.out PRE-CREATION trunk/ql/src/test/results/clientpositive/ppr_pushdown2.q.out PRE-CREATION Diff: https://reviews.apache.org/r/489/diff Testing ------- Thanks, Ning