diff --git ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConstantPropagateProcFactory.java ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConstantPropagateProcFactory.java index 671b9c4..d692e8e 100644 --- ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConstantPropagateProcFactory.java +++ ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConstantPropagateProcFactory.java @@ -863,7 +863,7 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx ctx, Object.. if (op.getChildOperators().size() == 1 && op.getChildOperators().get(0) instanceof JoinOperator) { JoinOperator joinOp = (JoinOperator) op.getChildOperators().get(0); - if (skipFolding(joinOp.getConf(), rsDesc.getTag())) { + if (skipFolding(joinOp.getConf())) { LOG.debug("Skip folding in outer join " + op); cppCtx.getOpToConstantExprs().put(op, new HashMap()); return null; @@ -889,22 +889,16 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx ctx, Object.. rsDesc.setKeyCols(newKeyEpxrs); // partition columns - if (!rsDesc.getPartitionCols().isEmpty()) { - ArrayList newPartExprs = new ArrayList(); - for (ExprNodeDesc desc : rsDesc.getPartitionCols()) { - ExprNodeDesc expr = foldExpr(desc, constants, cppCtx, op, 0, false); - if (expr instanceof ExprNodeConstantDesc || expr instanceof ExprNodeNullDesc) { - continue; - } - newPartExprs.add(expr); + ArrayList newPartExprs = new ArrayList(); + for (ExprNodeDesc desc : rsDesc.getPartitionCols()) { + ExprNodeDesc expr = foldExpr(desc, constants, cppCtx, op, 0, false); + if (expr != desc && desc instanceof ExprNodeColumnDesc + && expr instanceof ExprNodeConstantDesc) { + ((ExprNodeConstantDesc) expr).setFoldedFromCol(((ExprNodeColumnDesc) desc).getColumn()); } - if (newPartExprs.isEmpty()) { - // If all partition columns are removed because of constant, insert an extra column to avoid - // random partitioning. - newPartExprs.add(new ExprNodeConstantDesc("")); - } - rsDesc.setPartitionCols(newPartExprs); + newPartExprs.add(expr); } + rsDesc.setPartitionCols(newPartExprs); // value columns ArrayList newValExprs = new ArrayList(); @@ -916,28 +910,19 @@ public Object process(Node nd, Stack stack, NodeProcessorCtx ctx, Object.. return null; } - private boolean skipFolding(JoinDesc joinDesc, int tag) { - JoinCondDesc[] conds = joinDesc.getConds(); - int i; - for (i = conds.length - 1; i >= 0; i--) { - if (conds[i].getType() == JoinDesc.INNER_JOIN) { - if (tag == i + 1) - return false; - } else if (conds[i].getType() == JoinDesc.FULL_OUTER_JOIN) { - return true; - } else if (conds[i].getType() == JoinDesc.RIGHT_OUTER_JOIN) { - if (tag == i + 1) - return false; - return true; - } else if (conds[i].getType() == JoinDesc.LEFT_OUTER_JOIN) { - if (tag == i + 1) - return true; + /** + * Skip folding constants if there is outer join in join tree. + * @param joinDesc + * @return true if to skip. + */ + private boolean skipFolding(JoinDesc joinDesc) { + for (JoinCondDesc cond : joinDesc.getConds()) { + if (cond.getType() == JoinDesc.INNER_JOIN || cond.getType() == JoinDesc.UNIQUE_JOIN) { + continue; } + return true; } - if (tag == 0) { - return false; - } - return true; + return false; } } diff --git ql/src/test/queries/clientpositive/constprog_partitioner.q ql/src/test/queries/clientpositive/constprog_partitioner.q index 5b242c0..7800ffe 100644 --- ql/src/test/queries/clientpositive/constprog_partitioner.q +++ ql/src/test/queries/clientpositive/constprog_partitioner.q @@ -9,3 +9,16 @@ SELECT src1.key, src1.key + 1, src2.value SELECT src1.key, src1.key + 1, src2.value FROM src src1 join src src2 ON src1.key = src2.key AND src1.key = 100; + +EXPLAIN +SELECT l_partkey, l_suppkey +FROM lineitem li +WHERE li.l_linenumber = 1 AND + li.l_orderkey IN (SELECT l_orderkey FROM lineitem WHERE l_shipmode = 'AIR' AND l_linenumber = li.l_linenumber) +; + +SELECT l_partkey, l_suppkey +FROM lineitem li +WHERE li.l_linenumber = 1 AND + li.l_orderkey IN (SELECT l_orderkey FROM lineitem WHERE l_shipmode = 'AIR' AND l_linenumber = li.l_linenumber) +; diff --git ql/src/test/results/clientpositive/cluster.q.out ql/src/test/results/clientpositive/cluster.q.out index ea5a6a3..eff3399 100644 --- ql/src/test/results/clientpositive/cluster.q.out +++ ql/src/test/results/clientpositive/cluster.q.out @@ -25,7 +25,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '10' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '10' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: string) Reduce Operator Tree: @@ -83,7 +83,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '20' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '20' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: string) Reduce Operator Tree: @@ -141,7 +141,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '20' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '20' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: string) Reduce Operator Tree: @@ -199,7 +199,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '20' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '20' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: string) Reduce Operator Tree: @@ -257,7 +257,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '20' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '20' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: string) Reduce Operator Tree: @@ -315,7 +315,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '20' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '20' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: string) Reduce Operator Tree: @@ -430,7 +430,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '20' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '20' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: string) Reduce Operator Tree: @@ -485,7 +485,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '20' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '20' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE value expressions: value (type: string) TableScan @@ -497,7 +497,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '20' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '20' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE Reduce Operator Tree: Join Operator @@ -576,7 +576,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '20' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '20' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE value expressions: value (type: string) TableScan @@ -588,7 +588,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '20' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '20' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE value expressions: value (type: string) Reduce Operator Tree: @@ -673,7 +673,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '20' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '20' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE value expressions: value (type: string) TableScan @@ -685,7 +685,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '20' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '20' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE value expressions: value (type: string) Reduce Operator Tree: @@ -715,7 +715,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '20' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '20' (type: string) Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: string), _col3 (type: string) Reduce Operator Tree: @@ -770,7 +770,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '20' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '20' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE value expressions: value (type: string) TableScan @@ -782,7 +782,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '20' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '20' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE Reduce Operator Tree: Join Operator @@ -811,7 +811,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '20' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '20' (type: string) Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: string), _col2 (type: string) Reduce Operator Tree: diff --git ql/src/test/results/clientpositive/constprog2.q.out ql/src/test/results/clientpositive/constprog2.q.out index 7fc91ba..792b111 100644 --- ql/src/test/results/clientpositive/constprog2.q.out +++ ql/src/test/results/clientpositive/constprog2.q.out @@ -27,7 +27,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '86' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '86' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: string) TableScan @@ -41,7 +41,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '86' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '86' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE Reduce Operator Tree: Join Operator @@ -110,7 +110,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '86' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '86' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: string) TableScan @@ -124,7 +124,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '86' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '86' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE Reduce Operator Tree: Join Operator diff --git ql/src/test/results/clientpositive/constprog_partitioner.q.out ql/src/test/results/clientpositive/constprog_partitioner.q.out index 48e5b38..063ef62 100644 --- ql/src/test/results/clientpositive/constprog_partitioner.q.out +++ ql/src/test/results/clientpositive/constprog_partitioner.q.out @@ -27,7 +27,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '100' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '100' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: string) TableScan @@ -41,7 +41,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '100' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '100' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE Reduce Operator Tree: Join Operator @@ -84,3 +84,254 @@ POSTHOOK: Input: default@src 100 101.0 val_100 100 101.0 val_100 100 101.0 val_100 +PREHOOK: query: EXPLAIN +SELECT l_partkey, l_suppkey +FROM lineitem li +WHERE li.l_linenumber = 1 AND + li.l_orderkey IN (SELECT l_orderkey FROM lineitem WHERE l_shipmode = 'AIR' AND l_linenumber = li.l_linenumber) +PREHOOK: type: QUERY +POSTHOOK: query: EXPLAIN +SELECT l_partkey, l_suppkey +FROM lineitem li +WHERE li.l_linenumber = 1 AND + li.l_orderkey IN (SELECT l_orderkey FROM lineitem WHERE l_shipmode = 'AIR' AND l_linenumber = li.l_linenumber) +POSTHOOK: type: QUERY +STAGE DEPENDENCIES: + Stage-1 is a root stage + Stage-0 depends on stages: Stage-1 + +STAGE PLANS: + Stage: Stage-1 + Map Reduce + Map Operator Tree: + TableScan + alias: li + Statistics: Num rows: 100 Data size: 11999 Basic stats: COMPLETE Column stats: NONE + Filter Operator + predicate: ((l_linenumber = 1) and l_orderkey is not null) (type: boolean) + Statistics: Num rows: 25 Data size: 2999 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: l_orderkey (type: int), l_partkey (type: int), l_suppkey (type: int), 1 (type: int) + outputColumnNames: _col0, _col1, _col2, _col3 + Statistics: Num rows: 25 Data size: 2999 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: int), _col3 (type: int) + sort order: ++ + Map-reduce partition columns: _col0 (type: int), _col3 (type: int) + Statistics: Num rows: 25 Data size: 2999 Basic stats: COMPLETE Column stats: NONE + value expressions: _col1 (type: int), _col2 (type: int) + TableScan + alias: li + Statistics: Num rows: 100 Data size: 11999 Basic stats: COMPLETE Column stats: NONE + Filter Operator + predicate: (((l_shipmode = 'AIR') and l_orderkey is not null) and l_linenumber is not null) (type: boolean) + Statistics: Num rows: 13 Data size: 1559 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: l_orderkey (type: int), l_linenumber (type: int) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 13 Data size: 1559 Basic stats: COMPLETE Column stats: NONE + Group By Operator + keys: _col0 (type: int), _col1 (type: int) + mode: hash + outputColumnNames: _col0, _col1 + Statistics: Num rows: 13 Data size: 1559 Basic stats: COMPLETE Column stats: NONE + Reduce Output Operator + key expressions: _col0 (type: int), _col1 (type: int) + sort order: ++ + Map-reduce partition columns: _col0 (type: int), _col1 (type: int) + Statistics: Num rows: 13 Data size: 1559 Basic stats: COMPLETE Column stats: NONE + Reduce Operator Tree: + Join Operator + condition map: + Left Semi Join 0 to 1 + keys: + 0 _col0 (type: int), _col3 (type: int) + 1 _col0 (type: int), _col1 (type: int) + outputColumnNames: _col1, _col2 + Statistics: Num rows: 27 Data size: 3298 Basic stats: COMPLETE Column stats: NONE + Select Operator + expressions: _col1 (type: int), _col2 (type: int) + outputColumnNames: _col0, _col1 + Statistics: Num rows: 27 Data size: 3298 Basic stats: COMPLETE Column stats: NONE + File Output Operator + compressed: false + Statistics: Num rows: 27 Data size: 3298 Basic stats: COMPLETE Column stats: NONE + table: + input format: org.apache.hadoop.mapred.TextInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + + Stage: Stage-0 + Fetch Operator + limit: -1 + Processor Tree: + ListSink + +PREHOOK: query: SELECT l_partkey, l_suppkey +FROM lineitem li +WHERE li.l_linenumber = 1 AND + li.l_orderkey IN (SELECT l_orderkey FROM lineitem WHERE l_shipmode = 'AIR' AND l_linenumber = li.l_linenumber) +PREHOOK: type: QUERY +PREHOOK: Input: default@lineitem +#### A masked pattern was here #### +POSTHOOK: query: SELECT l_partkey, l_suppkey +FROM lineitem li +WHERE li.l_linenumber = 1 AND + li.l_orderkey IN (SELECT l_orderkey FROM lineitem WHERE l_shipmode = 'AIR' AND l_linenumber = li.l_linenumber) +POSTHOOK: type: QUERY +POSTHOOK: Input: default@lineitem +#### A masked pattern was here #### +108570 8571 +4297 1798 +PREHOOK: query: DROP TABLE IF EXISTS src +PREHOOK: type: DROPTABLE +PREHOOK: Input: default@src +PREHOOK: Output: default@src +POSTHOOK: query: DROP TABLE IF EXISTS src +POSTHOOK: type: DROPTABLE +POSTHOOK: Input: default@src +POSTHOOK: Output: default@src +PREHOOK: query: DROP TABLE IF EXISTS src1 +PREHOOK: type: DROPTABLE +PREHOOK: Input: default@src1 +PREHOOK: Output: default@src1 +POSTHOOK: query: DROP TABLE IF EXISTS src1 +POSTHOOK: type: DROPTABLE +POSTHOOK: Input: default@src1 +POSTHOOK: Output: default@src1 +PREHOOK: query: DROP TABLE IF EXISTS src_json +PREHOOK: type: DROPTABLE +PREHOOK: Input: default@src_json +PREHOOK: Output: default@src_json +POSTHOOK: query: DROP TABLE IF EXISTS src_json +POSTHOOK: type: DROPTABLE +POSTHOOK: Input: default@src_json +POSTHOOK: Output: default@src_json +PREHOOK: query: DROP TABLE IF EXISTS src_sequencefile +PREHOOK: type: DROPTABLE +PREHOOK: Input: default@src_sequencefile +PREHOOK: Output: default@src_sequencefile +POSTHOOK: query: DROP TABLE IF EXISTS src_sequencefile +POSTHOOK: type: DROPTABLE +POSTHOOK: Input: default@src_sequencefile +POSTHOOK: Output: default@src_sequencefile +PREHOOK: query: DROP TABLE IF EXISTS src_thrift +PREHOOK: type: DROPTABLE +PREHOOK: Input: default@src_thrift +PREHOOK: Output: default@src_thrift +POSTHOOK: query: DROP TABLE IF EXISTS src_thrift +POSTHOOK: type: DROPTABLE +POSTHOOK: Input: default@src_thrift +POSTHOOK: Output: default@src_thrift +PREHOOK: query: DROP TABLE IF EXISTS srcbucket +PREHOOK: type: DROPTABLE +PREHOOK: Input: default@srcbucket +PREHOOK: Output: default@srcbucket +POSTHOOK: query: DROP TABLE IF EXISTS srcbucket +POSTHOOK: type: DROPTABLE +POSTHOOK: Input: default@srcbucket +POSTHOOK: Output: default@srcbucket +PREHOOK: query: DROP TABLE IF EXISTS srcbucket2 +PREHOOK: type: DROPTABLE +PREHOOK: Input: default@srcbucket2 +PREHOOK: Output: default@srcbucket2 +POSTHOOK: query: DROP TABLE IF EXISTS srcbucket2 +POSTHOOK: type: DROPTABLE +POSTHOOK: Input: default@srcbucket2 +POSTHOOK: Output: default@srcbucket2 +PREHOOK: query: DROP TABLE IF EXISTS srcpart +PREHOOK: type: DROPTABLE +PREHOOK: Input: default@srcpart +PREHOOK: Output: default@srcpart +POSTHOOK: query: DROP TABLE IF EXISTS srcpart +POSTHOOK: type: DROPTABLE +POSTHOOK: Input: default@srcpart +POSTHOOK: Output: default@srcpart +PREHOOK: query: DROP TABLE IF EXISTS primitives +PREHOOK: type: DROPTABLE +POSTHOOK: query: DROP TABLE IF EXISTS primitives +POSTHOOK: type: DROPTABLE +PREHOOK: query: DROP TABLE IF EXISTS dest1 +PREHOOK: type: DROPTABLE +POSTHOOK: query: DROP TABLE IF EXISTS dest1 +POSTHOOK: type: DROPTABLE +PREHOOK: query: DROP TABLE IF EXISTS dest2 +PREHOOK: type: DROPTABLE +POSTHOOK: query: DROP TABLE IF EXISTS dest2 +POSTHOOK: type: DROPTABLE +PREHOOK: query: DROP TABLE IF EXISTS dest3 +PREHOOK: type: DROPTABLE +POSTHOOK: query: DROP TABLE IF EXISTS dest3 +POSTHOOK: type: DROPTABLE +PREHOOK: query: DROP TABLE IF EXISTS dest4 +PREHOOK: type: DROPTABLE +POSTHOOK: query: DROP TABLE IF EXISTS dest4 +POSTHOOK: type: DROPTABLE +PREHOOK: query: DROP TABLE IF EXISTS dest4_sequencefile +PREHOOK: type: DROPTABLE +POSTHOOK: query: DROP TABLE IF EXISTS dest4_sequencefile +POSTHOOK: type: DROPTABLE +PREHOOK: query: DROP TABLE IF EXISTS dest_j1 +PREHOOK: type: DROPTABLE +POSTHOOK: query: DROP TABLE IF EXISTS dest_j1 +POSTHOOK: type: DROPTABLE +PREHOOK: query: DROP TABLE IF EXISTS dest_g1 +PREHOOK: type: DROPTABLE +POSTHOOK: query: DROP TABLE IF EXISTS dest_g1 +POSTHOOK: type: DROPTABLE +PREHOOK: query: DROP TABLE IF EXISTS dest_g2 +PREHOOK: type: DROPTABLE +POSTHOOK: query: DROP TABLE IF EXISTS dest_g2 +POSTHOOK: type: DROPTABLE +PREHOOK: query: DROP TABLE IF EXISTS fetchtask_ioexception +PREHOOK: type: DROPTABLE +POSTHOOK: query: DROP TABLE IF EXISTS fetchtask_ioexception +POSTHOOK: type: DROPTABLE +PREHOOK: query: DROP TABLE IF EXISTS cbo_t1 +PREHOOK: type: DROPTABLE +PREHOOK: Input: default@cbo_t1 +PREHOOK: Output: default@cbo_t1 +POSTHOOK: query: DROP TABLE IF EXISTS cbo_t1 +POSTHOOK: type: DROPTABLE +POSTHOOK: Input: default@cbo_t1 +POSTHOOK: Output: default@cbo_t1 +PREHOOK: query: DROP TABLE IF EXISTS cbo_t2 +PREHOOK: type: DROPTABLE +PREHOOK: Input: default@cbo_t2 +PREHOOK: Output: default@cbo_t2 +POSTHOOK: query: DROP TABLE IF EXISTS cbo_t2 +POSTHOOK: type: DROPTABLE +POSTHOOK: Input: default@cbo_t2 +POSTHOOK: Output: default@cbo_t2 +PREHOOK: query: DROP TABLE IF EXISTS cbo_t3 +PREHOOK: type: DROPTABLE +PREHOOK: Input: default@cbo_t3 +PREHOOK: Output: default@cbo_t3 +POSTHOOK: query: DROP TABLE IF EXISTS cbo_t3 +POSTHOOK: type: DROPTABLE +POSTHOOK: Input: default@cbo_t3 +POSTHOOK: Output: default@cbo_t3 +PREHOOK: query: DROP TABLE IF EXISTS src_cbo +PREHOOK: type: DROPTABLE +PREHOOK: Input: default@src_cbo +PREHOOK: Output: default@src_cbo +POSTHOOK: query: DROP TABLE IF EXISTS src_cbo +POSTHOOK: type: DROPTABLE +POSTHOOK: Input: default@src_cbo +POSTHOOK: Output: default@src_cbo +PREHOOK: query: DROP TABLE IF EXISTS part +PREHOOK: type: DROPTABLE +PREHOOK: Input: default@part +PREHOOK: Output: default@part +POSTHOOK: query: DROP TABLE IF EXISTS part +POSTHOOK: type: DROPTABLE +POSTHOOK: Input: default@part +POSTHOOK: Output: default@part +PREHOOK: query: DROP TABLE IF EXISTS lineitem +PREHOOK: type: DROPTABLE +PREHOOK: Input: default@lineitem +PREHOOK: Output: default@lineitem +POSTHOOK: query: DROP TABLE IF EXISTS lineitem +POSTHOOK: type: DROPTABLE +POSTHOOK: Input: default@lineitem +POSTHOOK: Output: default@lineitem diff --git ql/src/test/results/clientpositive/identity_project_remove_skip.q.out ql/src/test/results/clientpositive/identity_project_remove_skip.q.out index 103a42e..e7bd0ed 100644 --- ql/src/test/results/clientpositive/identity_project_remove_skip.q.out +++ ql/src/test/results/clientpositive/identity_project_remove_skip.q.out @@ -135,13 +135,13 @@ STAGE PLANS: Reduce Output Operator key expressions: '105' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '105' (type: string) Statistics: Num rows: 62 Data size: 658 Basic stats: COMPLETE Column stats: NONE TableScan Reduce Output Operator key expressions: '105' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '105' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE Reduce Operator Tree: Join Operator diff --git ql/src/test/results/clientpositive/join_nullsafe.q.out ql/src/test/results/clientpositive/join_nullsafe.q.out index 05a576a..9bdfcbd 100644 --- ql/src/test/results/clientpositive/join_nullsafe.q.out +++ ql/src/test/results/clientpositive/join_nullsafe.q.out @@ -1525,7 +1525,7 @@ STAGE PLANS: Reduce Output Operator key expressions: null (type: void) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: null (type: void) Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE value expressions: value (type: int) TableScan @@ -1537,7 +1537,7 @@ STAGE PLANS: Reduce Output Operator key expressions: null (type: void) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: null (type: void) Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE value expressions: key (type: int) Reduce Operator Tree: diff --git ql/src/test/results/clientpositive/ppd2.q.out ql/src/test/results/clientpositive/ppd2.q.out index 7902ce6..868da3d 100644 --- ql/src/test/results/clientpositive/ppd2.q.out +++ ql/src/test/results/clientpositive/ppd2.q.out @@ -347,7 +347,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '20' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '20' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE value expressions: value (type: string) TableScan @@ -359,7 +359,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '20' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '20' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE Reduce Operator Tree: Join Operator diff --git ql/src/test/results/clientpositive/ppd_clusterby.q.out ql/src/test/results/clientpositive/ppd_clusterby.q.out index e294f4a..b21835f 100644 --- ql/src/test/results/clientpositive/ppd_clusterby.q.out +++ ql/src/test/results/clientpositive/ppd_clusterby.q.out @@ -25,7 +25,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '10' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '10' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: string) Reduce Operator Tree: @@ -80,7 +80,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '20' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '20' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE value expressions: value (type: string) TableScan @@ -92,7 +92,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '20' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '20' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE Reduce Operator Tree: Join Operator @@ -174,7 +174,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '10' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '10' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: string) Reduce Operator Tree: @@ -229,7 +229,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '20' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '20' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE value expressions: value (type: string) TableScan @@ -241,7 +241,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '20' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '20' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE Reduce Operator Tree: Join Operator diff --git ql/src/test/results/clientpositive/ppd_join4.q.out ql/src/test/results/clientpositive/ppd_join4.q.out index 7ef9012..22f84ba 100644 --- ql/src/test/results/clientpositive/ppd_join4.q.out +++ ql/src/test/results/clientpositive/ppd_join4.q.out @@ -82,7 +82,7 @@ STAGE PLANS: Reduce Output Operator key expressions: 'a' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: 'a' (type: string) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE TableScan alias: t3 @@ -93,7 +93,7 @@ STAGE PLANS: Reduce Output Operator key expressions: 'a' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: 'a' (type: string) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE Reduce Operator Tree: Join Operator diff --git ql/src/test/results/clientpositive/ppd_outer_join5.q.out ql/src/test/results/clientpositive/ppd_outer_join5.q.out index 8ba4ded..43c792f 100644 --- ql/src/test/results/clientpositive/ppd_outer_join5.q.out +++ ql/src/test/results/clientpositive/ppd_outer_join5.q.out @@ -73,9 +73,9 @@ STAGE PLANS: predicate: (id = 20) (type: boolean) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE Reduce Output Operator - key expressions: 20 (type: int) + key expressions: id (type: int) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: id (type: int) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE value expressions: key (type: string), value (type: string) Reduce Operator Tree: @@ -126,9 +126,9 @@ STAGE PLANS: predicate: (id = 20) (type: boolean) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE Reduce Output Operator - key expressions: 20 (type: int) + key expressions: id (type: int) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: id (type: int) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE value expressions: key (type: string), value (type: string) TableScan @@ -138,9 +138,9 @@ STAGE PLANS: predicate: (id = 20) (type: boolean) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE Reduce Output Operator - key expressions: 20 (type: int) + key expressions: id (type: int) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: id (type: int) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE value expressions: key (type: string), value (type: string) TableScan @@ -164,10 +164,10 @@ STAGE PLANS: 0 id (type: int) 1 id (type: int) 2 id (type: int) - outputColumnNames: _col1, _col2, _col7, _col8, _col12, _col13, _col14 + outputColumnNames: _col0, _col1, _col2, _col7, _col8, _col12, _col13, _col14 Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE Select Operator - expressions: 20 (type: int), _col1 (type: string), _col2 (type: string), 20 (type: int), _col7 (type: string), _col8 (type: string), _col12 (type: int), _col13 (type: string), _col14 (type: string) + expressions: _col0 (type: int), _col1 (type: string), _col2 (type: string), 20 (type: int), _col7 (type: string), _col8 (type: string), _col12 (type: int), _col13 (type: string), _col14 (type: string) outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8 Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE File Output Operator @@ -203,9 +203,9 @@ STAGE PLANS: predicate: (id = 20) (type: boolean) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE Reduce Output Operator - key expressions: 20 (type: int) + key expressions: id (type: int) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: id (type: int) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE value expressions: key (type: string), value (type: string) TableScan @@ -215,9 +215,9 @@ STAGE PLANS: predicate: (id = 20) (type: boolean) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE Reduce Output Operator - key expressions: 20 (type: int) + key expressions: id (type: int) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: id (type: int) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE value expressions: key (type: string), value (type: string) TableScan @@ -241,10 +241,10 @@ STAGE PLANS: 0 id (type: int) 1 id (type: int) 2 id (type: int) - outputColumnNames: _col1, _col2, _col7, _col8, _col12, _col13, _col14 + outputColumnNames: _col0, _col1, _col2, _col7, _col8, _col12, _col13, _col14 Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE Select Operator - expressions: 20 (type: int), _col1 (type: string), _col2 (type: string), 20 (type: int), _col7 (type: string), _col8 (type: string), _col12 (type: int), _col13 (type: string), _col14 (type: string) + expressions: _col0 (type: int), _col1 (type: string), _col2 (type: string), 20 (type: int), _col7 (type: string), _col8 (type: string), _col12 (type: int), _col13 (type: string), _col14 (type: string) outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8 Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE File Output Operator diff --git ql/src/test/results/clientpositive/ppd_union_view.q.out ql/src/test/results/clientpositive/ppd_union_view.q.out index 68e5329..85936d6 100644 --- ql/src/test/results/clientpositive/ppd_union_view.q.out +++ ql/src/test/results/clientpositive/ppd_union_view.q.out @@ -179,7 +179,7 @@ STAGE PLANS: Reduce Output Operator key expressions: keymap (type: string), '2011-10-13' (type: string) sort order: ++ - Map-reduce partition columns: keymap (type: string) + Map-reduce partition columns: keymap (type: string), '2011-10-13' (type: string) Statistics: Num rows: 1 Data size: 14 Basic stats: COMPLETE Column stats: NONE tag: 0 value expressions: value (type: string) @@ -195,7 +195,7 @@ STAGE PLANS: Reduce Output Operator key expressions: keymap (type: string), '2011-10-13' (type: string) sort order: ++ - Map-reduce partition columns: keymap (type: string) + Map-reduce partition columns: keymap (type: string), '2011-10-13' (type: string) Statistics: Num rows: 1 Data size: 12 Basic stats: COMPLETE Column stats: NONE tag: 1 value expressions: key (type: string) diff --git ql/src/test/results/clientpositive/regex_col.q.out ql/src/test/results/clientpositive/regex_col.q.out index c542f52..16f8f88 100644 --- ql/src/test/results/clientpositive/regex_col.q.out +++ ql/src/test/results/clientpositive/regex_col.q.out @@ -174,7 +174,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '103' (type: string), _col2 (type: string), _col1 (type: string) sort order: +++ - Map-reduce partition columns: _col2 (type: string), _col1 (type: string) + Map-reduce partition columns: '103' (type: string), _col2 (type: string), _col1 (type: string) Statistics: Num rows: 1000 Data size: 10624 Basic stats: COMPLETE Column stats: NONE TableScan alias: a @@ -189,7 +189,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '103' (type: string), _col2 (type: string), _col1 (type: string) sort order: +++ - Map-reduce partition columns: _col2 (type: string), _col1 (type: string) + Map-reduce partition columns: '103' (type: string), _col2 (type: string), _col1 (type: string) Statistics: Num rows: 1000 Data size: 10624 Basic stats: COMPLETE Column stats: NONE Reduce Operator Tree: Join Operator diff --git ql/src/test/results/clientpositive/smb_mapjoin_25.q.out ql/src/test/results/clientpositive/smb_mapjoin_25.q.out index cf374cb..c0a8959 100644 --- ql/src/test/results/clientpositive/smb_mapjoin_25.q.out +++ ql/src/test/results/clientpositive/smb_mapjoin_25.q.out @@ -71,7 +71,7 @@ STAGE PLANS: Reduce Output Operator key expressions: 5 (type: int) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: 5 (type: int) Statistics: Num rows: 26 Data size: 104 Basic stats: COMPLETE Column stats: NONE TableScan alias: b @@ -82,7 +82,7 @@ STAGE PLANS: Reduce Output Operator key expressions: 5 (type: int) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: 5 (type: int) Statistics: Num rows: 25 Data size: 100 Basic stats: COMPLETE Column stats: NONE Reduce Operator Tree: Join Operator @@ -154,7 +154,7 @@ STAGE PLANS: Reduce Output Operator key expressions: 5 (type: int) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: 5 (type: int) Statistics: Num rows: 25 Data size: 100 Basic stats: COMPLETE Column stats: NONE TableScan alias: d @@ -165,7 +165,7 @@ STAGE PLANS: Reduce Output Operator key expressions: 5 (type: int) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: 5 (type: int) Statistics: Num rows: 27 Data size: 108 Basic stats: COMPLETE Column stats: NONE Reduce Operator Tree: Join Operator diff --git ql/src/test/results/clientpositive/spark/ppd_join4.q.out ql/src/test/results/clientpositive/spark/ppd_join4.q.out index 4855a31..7f14e3a 100644 --- ql/src/test/results/clientpositive/spark/ppd_join4.q.out +++ ql/src/test/results/clientpositive/spark/ppd_join4.q.out @@ -81,7 +81,7 @@ STAGE PLANS: Reduce Output Operator key expressions: 'a' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: 'a' (type: string) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE Reducer 2 Reduce Operator Tree: @@ -90,7 +90,7 @@ STAGE PLANS: Reduce Output Operator key expressions: 'a' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: 'a' (type: string) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE Reducer 3 Reduce Operator Tree: diff --git ql/src/test/results/clientpositive/spark/ppd_outer_join5.q.out ql/src/test/results/clientpositive/spark/ppd_outer_join5.q.out index b634764..862db3c 100644 --- ql/src/test/results/clientpositive/spark/ppd_outer_join5.q.out +++ ql/src/test/results/clientpositive/spark/ppd_outer_join5.q.out @@ -82,9 +82,9 @@ STAGE PLANS: predicate: (id = 20) (type: boolean) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE Reduce Output Operator - key expressions: 20 (type: int) + key expressions: id (type: int) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: id (type: int) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE value expressions: key (type: string), value (type: string) Reducer 2 @@ -141,9 +141,9 @@ STAGE PLANS: predicate: (id = 20) (type: boolean) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE Reduce Output Operator - key expressions: 20 (type: int) + key expressions: id (type: int) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: id (type: int) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE value expressions: key (type: string), value (type: string) Map 3 @@ -155,9 +155,9 @@ STAGE PLANS: predicate: (id = 20) (type: boolean) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE Reduce Output Operator - key expressions: 20 (type: int) + key expressions: id (type: int) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: id (type: int) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE value expressions: key (type: string), value (type: string) Map 4 @@ -184,10 +184,10 @@ STAGE PLANS: 0 id (type: int) 1 id (type: int) 2 id (type: int) - outputColumnNames: _col1, _col2, _col7, _col8, _col12, _col13, _col14 + outputColumnNames: _col0, _col1, _col2, _col7, _col8, _col12, _col13, _col14 Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE Select Operator - expressions: 20 (type: int), _col1 (type: string), _col2 (type: string), 20 (type: int), _col7 (type: string), _col8 (type: string), _col12 (type: int), _col13 (type: string), _col14 (type: string) + expressions: _col0 (type: int), _col1 (type: string), _col2 (type: string), 20 (type: int), _col7 (type: string), _col8 (type: string), _col12 (type: int), _col13 (type: string), _col14 (type: string) outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8 Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE File Output Operator @@ -228,9 +228,9 @@ STAGE PLANS: predicate: (id = 20) (type: boolean) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE Reduce Output Operator - key expressions: 20 (type: int) + key expressions: id (type: int) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: id (type: int) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE value expressions: key (type: string), value (type: string) Map 3 @@ -242,9 +242,9 @@ STAGE PLANS: predicate: (id = 20) (type: boolean) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE Reduce Output Operator - key expressions: 20 (type: int) + key expressions: id (type: int) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: id (type: int) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE value expressions: key (type: string), value (type: string) Map 4 @@ -271,10 +271,10 @@ STAGE PLANS: 0 id (type: int) 1 id (type: int) 2 id (type: int) - outputColumnNames: _col1, _col2, _col7, _col8, _col12, _col13, _col14 + outputColumnNames: _col0, _col1, _col2, _col7, _col8, _col12, _col13, _col14 Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE Select Operator - expressions: 20 (type: int), _col1 (type: string), _col2 (type: string), 20 (type: int), _col7 (type: string), _col8 (type: string), _col12 (type: int), _col13 (type: string), _col14 (type: string) + expressions: _col0 (type: int), _col1 (type: string), _col2 (type: string), 20 (type: int), _col7 (type: string), _col8 (type: string), _col12 (type: int), _col13 (type: string), _col14 (type: string) outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8 Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE File Output Operator diff --git ql/src/test/results/clientpositive/spark/smb_mapjoin_25.q.out ql/src/test/results/clientpositive/spark/smb_mapjoin_25.q.out index 66600a2..f81c890 100644 --- ql/src/test/results/clientpositive/spark/smb_mapjoin_25.q.out +++ ql/src/test/results/clientpositive/spark/smb_mapjoin_25.q.out @@ -76,7 +76,7 @@ STAGE PLANS: Reduce Output Operator key expressions: 5 (type: int) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: 5 (type: int) Statistics: Num rows: 26 Data size: 104 Basic stats: COMPLETE Column stats: NONE Map 4 Map Operator Tree: @@ -89,7 +89,7 @@ STAGE PLANS: Reduce Output Operator key expressions: 5 (type: int) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: 5 (type: int) Statistics: Num rows: 25 Data size: 100 Basic stats: COMPLETE Column stats: NONE Map 5 Map Operator Tree: @@ -102,7 +102,7 @@ STAGE PLANS: Reduce Output Operator key expressions: 5 (type: int) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: 5 (type: int) Statistics: Num rows: 25 Data size: 100 Basic stats: COMPLETE Column stats: NONE Map 7 Map Operator Tree: @@ -115,7 +115,7 @@ STAGE PLANS: Reduce Output Operator key expressions: 5 (type: int) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: 5 (type: int) Statistics: Num rows: 27 Data size: 108 Basic stats: COMPLETE Column stats: NONE Reducer 2 Reduce Operator Tree: diff --git ql/src/test/results/clientpositive/spark/vector_mapjoin_reduce.q.out ql/src/test/results/clientpositive/spark/vector_mapjoin_reduce.q.out index aba0256..581bccf 100644 --- ql/src/test/results/clientpositive/spark/vector_mapjoin_reduce.q.out +++ ql/src/test/results/clientpositive/spark/vector_mapjoin_reduce.q.out @@ -223,7 +223,7 @@ STAGE PLANS: Statistics: Num rows: 6 Data size: 719 Basic stats: COMPLETE Column stats: NONE Spark HashTable Sink Operator keys: - 0 _col1 (type: int), 1 (type: int) + 0 _col1 (type: int), _col4 (type: int) 1 _col0 (type: int), _col1 (type: int) Local Work: Map Reduce Local Work @@ -267,7 +267,7 @@ STAGE PLANS: keys: 0 _col0 (type: int) 1 l_partkey (type: int) - outputColumnNames: _col0, _col1, _col3 + outputColumnNames: _col0, _col1, _col3, _col4 input vertices: 1 Map 3 Statistics: Num rows: 27 Data size: 3298 Basic stats: COMPLETE Column stats: NONE @@ -275,7 +275,7 @@ STAGE PLANS: condition map: Left Semi Join 0 to 1 keys: - 0 _col1 (type: int), 1 (type: int) + 0 _col1 (type: int), _col4 (type: int) 1 _col0 (type: int), _col1 (type: int) outputColumnNames: _col0, _col3 input vertices: diff --git ql/src/test/results/clientpositive/tez/dynamic_partition_pruning.q.out ql/src/test/results/clientpositive/tez/dynamic_partition_pruning.q.out index e4d09a9..6e62f74 100644 --- ql/src/test/results/clientpositive/tez/dynamic_partition_pruning.q.out +++ ql/src/test/results/clientpositive/tez/dynamic_partition_pruning.q.out @@ -2576,7 +2576,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '11' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '11' (type: string) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE Select Operator expressions: '11' (type: string) @@ -2605,7 +2605,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '11' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '11' (type: string) Statistics: Num rows: 1100 Data size: 11686 Basic stats: COMPLETE Column stats: NONE Reducer 3 Reduce Operator Tree: @@ -2715,7 +2715,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '13' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '13' (type: string) Statistics: Num rows: 1 Data size: 5 Basic stats: COMPLETE Column stats: NONE Reducer 2 Reduce Operator Tree: @@ -2729,7 +2729,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '13' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '13' (type: string) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE Reducer 3 Reduce Operator Tree: @@ -4694,7 +4694,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '11' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '11' (type: string) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE Select Operator expressions: '11' (type: string) diff --git ql/src/test/results/clientpositive/tez/dynamic_partition_pruning_2.q.out ql/src/test/results/clientpositive/tez/dynamic_partition_pruning_2.q.out index 242f5de..5e36599 100644 --- ql/src/test/results/clientpositive/tez/dynamic_partition_pruning_2.q.out +++ ql/src/test/results/clientpositive/tez/dynamic_partition_pruning_2.q.out @@ -602,7 +602,7 @@ STAGE PLANS: Reduce Output Operator key expressions: 1 (type: int) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: 1 (type: int) Statistics: Num rows: 1 Data size: 5 Basic stats: COMPLETE Column stats: NONE Stage: Stage-0 diff --git ql/src/test/results/clientpositive/tez/join_nullsafe.q.out ql/src/test/results/clientpositive/tez/join_nullsafe.q.out index 9f65c62..787f1f5 100644 --- ql/src/test/results/clientpositive/tez/join_nullsafe.q.out +++ ql/src/test/results/clientpositive/tez/join_nullsafe.q.out @@ -1578,7 +1578,7 @@ STAGE PLANS: Reduce Output Operator key expressions: null (type: void) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: null (type: void) Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE value expressions: value (type: int) Map 3 @@ -1592,7 +1592,7 @@ STAGE PLANS: Reduce Output Operator key expressions: null (type: void) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: null (type: void) Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE value expressions: key (type: int) Reducer 2 diff --git ql/src/test/results/clientpositive/tez/vector_decimal_mapjoin.q.out ql/src/test/results/clientpositive/tez/vector_decimal_mapjoin.q.out index 43802ae..fc72ada 100644 --- ql/src/test/results/clientpositive/tez/vector_decimal_mapjoin.q.out +++ ql/src/test/results/clientpositive/tez/vector_decimal_mapjoin.q.out @@ -82,7 +82,7 @@ STAGE PLANS: Reduce Output Operator key expressions: 6981 (type: int) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: 6981 (type: int) Statistics: Num rows: 6144 Data size: 1082530 Basic stats: COMPLETE Column stats: NONE value expressions: cdecimal2 (type: decimal(23,14)) Execution mode: vectorized diff --git ql/src/test/results/clientpositive/tez/vector_mapjoin_reduce.q.out ql/src/test/results/clientpositive/tez/vector_mapjoin_reduce.q.out index d56ee7c..053cda4 100644 --- ql/src/test/results/clientpositive/tez/vector_mapjoin_reduce.q.out +++ ql/src/test/results/clientpositive/tez/vector_mapjoin_reduce.q.out @@ -200,14 +200,14 @@ STAGE PLANS: predicate: (((l_linenumber = 1) and l_orderkey is not null) and l_partkey is not null) (type: boolean) Statistics: Num rows: 13 Data size: 1559 Basic stats: COMPLETE Column stats: NONE Select Operator - expressions: l_orderkey (type: int), l_partkey (type: int), l_suppkey (type: int) - outputColumnNames: _col0, _col1, _col2 + expressions: l_orderkey (type: int), l_partkey (type: int), l_suppkey (type: int), 1 (type: int) + outputColumnNames: _col0, _col1, _col2, _col3 Statistics: Num rows: 13 Data size: 1559 Basic stats: COMPLETE Column stats: NONE Map Join Operator condition map: Left Semi Join 0 to 1 keys: - 0 _col0 (type: int), 1 (type: int) + 0 _col0 (type: int), _col3 (type: int) 1 _col0 (type: int), _col1 (type: int) outputColumnNames: _col1, _col2 input vertices: diff --git ql/src/test/results/clientpositive/tez/vectorized_dynamic_partition_pruning.q.out ql/src/test/results/clientpositive/tez/vectorized_dynamic_partition_pruning.q.out index 8487e6f..3faf644 100644 --- ql/src/test/results/clientpositive/tez/vectorized_dynamic_partition_pruning.q.out +++ ql/src/test/results/clientpositive/tez/vectorized_dynamic_partition_pruning.q.out @@ -2606,7 +2606,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '11' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '11' (type: string) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE Select Operator expressions: '11' (type: string) @@ -2635,7 +2635,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '11' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '11' (type: string) Statistics: Num rows: 1100 Data size: 11686 Basic stats: COMPLETE Column stats: NONE Reducer 3 Reduce Operator Tree: @@ -2747,7 +2747,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '13' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '13' (type: string) Statistics: Num rows: 1 Data size: 172 Basic stats: COMPLETE Column stats: NONE Reducer 2 Reduce Operator Tree: @@ -2761,7 +2761,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '13' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '13' (type: string) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE Reducer 3 Reduce Operator Tree: @@ -4748,7 +4748,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '11' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '11' (type: string) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE Select Operator expressions: '11' (type: string) diff --git ql/src/test/results/clientpositive/union27.q.out ql/src/test/results/clientpositive/union27.q.out index f23f580..abbb81d 100644 --- ql/src/test/results/clientpositive/union27.q.out +++ ql/src/test/results/clientpositive/union27.q.out @@ -57,7 +57,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '97' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '97' (type: string) Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: string) TableScan @@ -75,7 +75,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '97' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '97' (type: string) Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE value expressions: _col1 (type: string) TableScan @@ -87,7 +87,7 @@ STAGE PLANS: Reduce Output Operator key expressions: '97' (type: string) sort order: + - Map-reduce partition columns: '' (type: string) + Map-reduce partition columns: '97' (type: string) Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE Reduce Operator Tree: Join Operator diff --git ql/src/test/results/clientpositive/vector_mapjoin_reduce.q.out ql/src/test/results/clientpositive/vector_mapjoin_reduce.q.out index 9a8ca32..6f11b8c 100644 --- ql/src/test/results/clientpositive/vector_mapjoin_reduce.q.out +++ ql/src/test/results/clientpositive/vector_mapjoin_reduce.q.out @@ -475,7 +475,7 @@ STAGE PLANS: Statistics: Num rows: 13 Data size: 1559 Basic stats: COMPLETE Column stats: NONE HashTable Sink Operator keys: - 0 _col0 (type: int), 1 (type: int) + 0 _col0 (type: int), _col3 (type: int) 1 _col0 (type: int), _col1 (type: int) Stage: Stage-8 @@ -488,14 +488,14 @@ STAGE PLANS: predicate: (((l_linenumber = 1) and l_orderkey is not null) and l_partkey is not null) (type: boolean) Statistics: Num rows: 13 Data size: 1559 Basic stats: COMPLETE Column stats: NONE Select Operator - expressions: l_orderkey (type: int), l_partkey (type: int), l_suppkey (type: int) - outputColumnNames: _col0, _col1, _col2 + expressions: l_orderkey (type: int), l_partkey (type: int), l_suppkey (type: int), 1 (type: int) + outputColumnNames: _col0, _col1, _col2, _col3 Statistics: Num rows: 13 Data size: 1559 Basic stats: COMPLETE Column stats: NONE Map Join Operator condition map: Left Semi Join 0 to 1 keys: - 0 _col0 (type: int), 1 (type: int) + 0 _col0 (type: int), _col3 (type: int) 1 _col0 (type: int), _col1 (type: int) outputColumnNames: _col1, _col2 Statistics: Num rows: 14 Data size: 1714 Basic stats: COMPLETE Column stats: NONE