You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by ha...@apache.org on 2015/01/28 07:25:50 UTC

svn commit: r1655226 [1/30] - in /hive/trunk: contrib/src/test/results/clientpositive/ ql/src/java/org/apache/hadoop/hive/ql/exec/ ql/src/java/org/apache/hadoop/hive/ql/optimizer/ ql/src/java/org/apache/hadoop/hive/ql/optimizer/correlation/ ql/src/java...

Author: hashutosh
Date: Wed Jan 28 06:25:44 2015
New Revision: 1655226

URL: http://svn.apache.org/r1655226
Log:
HIVE-9327 : CBO (Calcite Return Path): Removing Row Resolvers from ParseContext (Jesus Camacho Rodriguez via Ashutosh Chauhan)

Modified:
    hive/trunk/contrib/src/test/results/clientpositive/serde_typedbytes2.q.out
    hive/trunk/contrib/src/test/results/clientpositive/serde_typedbytes3.q.out
    hive/trunk/contrib/src/test/results/clientpositive/serde_typedbytes4.q.out
    hive/trunk/contrib/src/test/results/clientpositive/udaf_example_avg.q.out
    hive/trunk/contrib/src/test/results/clientpositive/udaf_example_group_concat.q.out
    hive/trunk/contrib/src/test/results/clientpositive/udaf_example_max.q.out
    hive/trunk/contrib/src/test/results/clientpositive/udaf_example_max_n.q.out
    hive/trunk/contrib/src/test/results/clientpositive/udaf_example_min.q.out
    hive/trunk/contrib/src/test/results/clientpositive/udaf_example_min_n.q.out
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/ColumnInfo.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/RowSchema.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/SelectOperator.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/Utilities.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/AbstractSMBJoinProc.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ColumnPruner.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ColumnPrunerProcCtx.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ColumnPrunerProcFactory.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConstantPropagate.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConstantPropagateProcCtx.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConstantPropagateProcFactory.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConvertJoinMapJoin.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/GenMapRedUtils.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/MapJoinProcessor.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/NonBlockingOpDeDupProc.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ReduceSinkMapJoinProc.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/SimpleFetchAggregation.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/SkewJoinOptimizer.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/SortedDynPartitionOptimizer.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/SparkMapJoinProcessor.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/StatsOptimizer.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/correlation/CorrelationOptimizer.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/correlation/CorrelationUtilities.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/correlation/QueryPlanTreeTransformation.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/index/RewriteGBUsingIndex.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/index/RewriteQueryUsingAggregateIndexCtx.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/lineage/ExprProcCtx.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/lineage/ExprProcFactory.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/lineage/OpProcFactory.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/CommonJoinTaskDispatcher.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/SortMergeJoinTaskDispatcher.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/spark/SparkMapJoinOptimizer.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/GenTezWork.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/ParseContext.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/RowResolver.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/parse/TaskCompiler.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/plan/MapWork.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/ppd/ExprWalkerInfo.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/java/org/apache/hadoop/hive/ql/ppd/OpWalkerInfo.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/ppd/PredicateTransitivePropagate.java
    hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/ppd/SyntheticJoinPredicate.java
    hive/trunk/ql/src/test/results/clientpositive/alter_partition_coltype.q.out
    hive/trunk/ql/src/test/results/clientpositive/annotate_stats_groupby.q.out
    hive/trunk/ql/src/test/results/clientpositive/annotate_stats_groupby2.q.out
    hive/trunk/ql/src/test/results/clientpositive/annotate_stats_join.q.out
    hive/trunk/ql/src/test/results/clientpositive/annotate_stats_join_pkfk.q.out
    hive/trunk/ql/src/test/results/clientpositive/annotate_stats_select.q.out
    hive/trunk/ql/src/test/results/clientpositive/annotate_stats_union.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_join0.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_join10.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_join11.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_join12.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_join13.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_join15.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_join16.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_join18.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_join18_multi_distinct.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_join20.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_join22.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_join24.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_join27.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_join30.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_join31.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_join32.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_join33.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_smb_mapjoin_14.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_sortmerge_join_1.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_sortmerge_join_10.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_sortmerge_join_11.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_sortmerge_join_12.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_sortmerge_join_14.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_sortmerge_join_15.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_sortmerge_join_2.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_sortmerge_join_3.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_sortmerge_join_4.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_sortmerge_join_5.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_sortmerge_join_6.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_sortmerge_join_7.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_sortmerge_join_8.q.out
    hive/trunk/ql/src/test/results/clientpositive/auto_sortmerge_join_9.q.out
    hive/trunk/ql/src/test/results/clientpositive/bucket_groupby.q.out
    hive/trunk/ql/src/test/results/clientpositive/bucket_map_join_1.q.out
    hive/trunk/ql/src/test/results/clientpositive/bucket_map_join_2.q.out
    hive/trunk/ql/src/test/results/clientpositive/bucketcontext_1.q.out
    hive/trunk/ql/src/test/results/clientpositive/bucketcontext_2.q.out
    hive/trunk/ql/src/test/results/clientpositive/bucketcontext_3.q.out
    hive/trunk/ql/src/test/results/clientpositive/bucketcontext_4.q.out
    hive/trunk/ql/src/test/results/clientpositive/bucketcontext_5.q.out
    hive/trunk/ql/src/test/results/clientpositive/bucketcontext_6.q.out
    hive/trunk/ql/src/test/results/clientpositive/bucketcontext_7.q.out
    hive/trunk/ql/src/test/results/clientpositive/bucketcontext_8.q.out
    hive/trunk/ql/src/test/results/clientpositive/bucketmapjoin10.q.out
    hive/trunk/ql/src/test/results/clientpositive/bucketmapjoin11.q.out
    hive/trunk/ql/src/test/results/clientpositive/bucketmapjoin12.q.out
    hive/trunk/ql/src/test/results/clientpositive/bucketmapjoin13.q.out
    hive/trunk/ql/src/test/results/clientpositive/bucketmapjoin8.q.out
    hive/trunk/ql/src/test/results/clientpositive/bucketmapjoin9.q.out
    hive/trunk/ql/src/test/results/clientpositive/column_access_stats.q.out
    hive/trunk/ql/src/test/results/clientpositive/columnstats_partlvl.q.out
    hive/trunk/ql/src/test/results/clientpositive/columnstats_tbllvl.q.out
    hive/trunk/ql/src/test/results/clientpositive/combine2.q.out
    hive/trunk/ql/src/test/results/clientpositive/correlationoptimizer1.q.out
    hive/trunk/ql/src/test/results/clientpositive/correlationoptimizer10.q.out
    hive/trunk/ql/src/test/results/clientpositive/correlationoptimizer11.q.out
    hive/trunk/ql/src/test/results/clientpositive/correlationoptimizer12.q.out
    hive/trunk/ql/src/test/results/clientpositive/correlationoptimizer14.q.out
    hive/trunk/ql/src/test/results/clientpositive/correlationoptimizer2.q.out
    hive/trunk/ql/src/test/results/clientpositive/correlationoptimizer3.q.out
    hive/trunk/ql/src/test/results/clientpositive/correlationoptimizer4.q.out
    hive/trunk/ql/src/test/results/clientpositive/correlationoptimizer7.q.out
    hive/trunk/ql/src/test/results/clientpositive/correlationoptimizer8.q.out
    hive/trunk/ql/src/test/results/clientpositive/count.q.out
    hive/trunk/ql/src/test/results/clientpositive/create_genericudaf.q.out
    hive/trunk/ql/src/test/results/clientpositive/create_view.q.out
    hive/trunk/ql/src/test/results/clientpositive/create_view_translate.q.out
    hive/trunk/ql/src/test/results/clientpositive/cross_join.q.out
    hive/trunk/ql/src/test/results/clientpositive/cross_product_check_1.q.out
    hive/trunk/ql/src/test/results/clientpositive/cross_product_check_2.q.out
    hive/trunk/ql/src/test/results/clientpositive/ctas_colname.q.out
    hive/trunk/ql/src/test/results/clientpositive/decimal_precision.q.out
    hive/trunk/ql/src/test/results/clientpositive/decimal_udf.q.out
    hive/trunk/ql/src/test/results/clientpositive/display_colstats_tbllvl.q.out
    hive/trunk/ql/src/test/results/clientpositive/distinct_stats.q.out
    hive/trunk/ql/src/test/results/clientpositive/dynpart_sort_opt_vectorization.q.out
    hive/trunk/ql/src/test/results/clientpositive/explain_logical.q.out
    hive/trunk/ql/src/test/results/clientpositive/fetch_aggregation.q.out
    hive/trunk/ql/src/test/results/clientpositive/gby_star.q.out
    hive/trunk/ql/src/test/results/clientpositive/groupby_distinct_samekey.q.out
    hive/trunk/ql/src/test/results/clientpositive/groupby_grouping_sets4.q.out
    hive/trunk/ql/src/test/results/clientpositive/groupby_grouping_sets6.q.out
    hive/trunk/ql/src/test/results/clientpositive/groupby_resolution.q.out
    hive/trunk/ql/src/test/results/clientpositive/groupby_sort_10.q.out
    hive/trunk/ql/src/test/results/clientpositive/groupby_sort_11.q.out
    hive/trunk/ql/src/test/results/clientpositive/groupby_sort_1_23.q.out
    hive/trunk/ql/src/test/results/clientpositive/groupby_sort_8.q.out
    hive/trunk/ql/src/test/results/clientpositive/groupby_sort_9.q.out
    hive/trunk/ql/src/test/results/clientpositive/groupby_sort_skew_1_23.q.out
    hive/trunk/ql/src/test/results/clientpositive/having.q.out
    hive/trunk/ql/src/test/results/clientpositive/index_auto_mult_tables.q.out
    hive/trunk/ql/src/test/results/clientpositive/index_auto_self_join.q.out
    hive/trunk/ql/src/test/results/clientpositive/index_bitmap3.q.out
    hive/trunk/ql/src/test/results/clientpositive/index_bitmap_auto.q.out
    hive/trunk/ql/src/test/results/clientpositive/index_bitmap_auto_partitioned.q.out
    hive/trunk/ql/src/test/results/clientpositive/index_bitmap_compression.q.out
    hive/trunk/ql/src/test/results/clientpositive/innerjoin.q.out
    hive/trunk/ql/src/test/results/clientpositive/input24.q.out
    hive/trunk/ql/src/test/results/clientpositive/input25.q.out
    hive/trunk/ql/src/test/results/clientpositive/input38.q.out
    hive/trunk/ql/src/test/results/clientpositive/input39.q.out
    hive/trunk/ql/src/test/results/clientpositive/join10.q.out
    hive/trunk/ql/src/test/results/clientpositive/join18.q.out
    hive/trunk/ql/src/test/results/clientpositive/join18_multi_distinct.q.out
    hive/trunk/ql/src/test/results/clientpositive/join38.q.out
    hive/trunk/ql/src/test/results/clientpositive/join40.q.out
    hive/trunk/ql/src/test/results/clientpositive/join_alt_syntax.q.out
    hive/trunk/ql/src/test/results/clientpositive/join_cond_pushdown_1.q.out
    hive/trunk/ql/src/test/results/clientpositive/join_cond_pushdown_3.q.out
    hive/trunk/ql/src/test/results/clientpositive/join_merge_multi_expressions.q.out
    hive/trunk/ql/src/test/results/clientpositive/lateral_view_cp.q.out
    hive/trunk/ql/src/test/results/clientpositive/lateral_view_noalias.q.out
    hive/trunk/ql/src/test/results/clientpositive/limit_partition_metadataonly.q.out
    hive/trunk/ql/src/test/results/clientpositive/limit_pushdown.q.out
    hive/trunk/ql/src/test/results/clientpositive/limit_pushdown_negative.q.out
    hive/trunk/ql/src/test/results/clientpositive/list_bucket_query_multiskew_3.q.out
    hive/trunk/ql/src/test/results/clientpositive/list_bucket_query_oneskew_2.q.out
    hive/trunk/ql/src/test/results/clientpositive/mapjoin_distinct.q.out
    hive/trunk/ql/src/test/results/clientpositive/mapjoin_subquery2.q.out
    hive/trunk/ql/src/test/results/clientpositive/merge_join_1.q.out
    hive/trunk/ql/src/test/results/clientpositive/mergejoins.q.out
    hive/trunk/ql/src/test/results/clientpositive/metadata_only_queries.q.out
    hive/trunk/ql/src/test/results/clientpositive/metadataonly1.q.out
    hive/trunk/ql/src/test/results/clientpositive/multiMapJoin1.q.out
    hive/trunk/ql/src/test/results/clientpositive/multiMapJoin2.q.out
    hive/trunk/ql/src/test/results/clientpositive/nonblock_op_deduplicate.q.out
    hive/trunk/ql/src/test/results/clientpositive/nonmr_fetch.q.out
    hive/trunk/ql/src/test/results/clientpositive/nullgroup.q.out
    hive/trunk/ql/src/test/results/clientpositive/nullgroup2.q.out
    hive/trunk/ql/src/test/results/clientpositive/nullgroup3.q.out
    hive/trunk/ql/src/test/results/clientpositive/nullgroup4.q.out
    hive/trunk/ql/src/test/results/clientpositive/nullgroup4_multi_distinct.q.out
    hive/trunk/ql/src/test/results/clientpositive/nullgroup5.q.out
    hive/trunk/ql/src/test/results/clientpositive/optimize_nullscan.q.out
    hive/trunk/ql/src/test/results/clientpositive/optional_outer.q.out
    hive/trunk/ql/src/test/results/clientpositive/orc_predicate_pushdown.q.out
    hive/trunk/ql/src/test/results/clientpositive/order2.q.out
    hive/trunk/ql/src/test/results/clientpositive/partition_boolexpr.q.out
    hive/trunk/ql/src/test/results/clientpositive/partition_multilevels.q.out
    hive/trunk/ql/src/test/results/clientpositive/plan_json.q.java1.7.out
    hive/trunk/ql/src/test/results/clientpositive/ppd2.q.out
    hive/trunk/ql/src/test/results/clientpositive/ppd_constant_where.q.out
    hive/trunk/ql/src/test/results/clientpositive/ppd_gby_join.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_union.q.out
    hive/trunk/ql/src/test/results/clientpositive/ppd_union_view.q.out
    hive/trunk/ql/src/test/results/clientpositive/ptf.q.out
    hive/trunk/ql/src/test/results/clientpositive/ptf_streaming.q.out
    hive/trunk/ql/src/test/results/clientpositive/ql_rewrite_gbtoidx.q.out
    hive/trunk/ql/src/test/results/clientpositive/ql_rewrite_gbtoidx_cbo_1.q.out
    hive/trunk/ql/src/test/results/clientpositive/ql_rewrite_gbtoidx_cbo_2.q.out
    hive/trunk/ql/src/test/results/clientpositive/quotedid_basic.q.out
    hive/trunk/ql/src/test/results/clientpositive/quotedid_partition.q.out
    hive/trunk/ql/src/test/results/clientpositive/reduce_deduplicate.q.out
    hive/trunk/ql/src/test/results/clientpositive/reduce_deduplicate_exclude_join.q.out
    hive/trunk/ql/src/test/results/clientpositive/reduce_deduplicate_extended.q.out
    hive/trunk/ql/src/test/results/clientpositive/selectDistinctStar.q.out
    hive/trunk/ql/src/test/results/clientpositive/semijoin.q.out
    hive/trunk/ql/src/test/results/clientpositive/skewjoin.q.out
    hive/trunk/ql/src/test/results/clientpositive/skewjoin_mapjoin1.q.out
    hive/trunk/ql/src/test/results/clientpositive/skewjoin_mapjoin10.q.out
    hive/trunk/ql/src/test/results/clientpositive/skewjoin_mapjoin5.q.out
    hive/trunk/ql/src/test/results/clientpositive/skewjoin_mapjoin6.q.out
    hive/trunk/ql/src/test/results/clientpositive/skewjoinopt1.q.out
    hive/trunk/ql/src/test/results/clientpositive/skewjoinopt10.q.out
    hive/trunk/ql/src/test/results/clientpositive/skewjoinopt15.q.out
    hive/trunk/ql/src/test/results/clientpositive/skewjoinopt2.q.out
    hive/trunk/ql/src/test/results/clientpositive/skewjoinopt9.q.out
    hive/trunk/ql/src/test/results/clientpositive/smb_mapjoin_14.q.out
    hive/trunk/ql/src/test/results/clientpositive/smb_mapjoin_16.q.out
    hive/trunk/ql/src/test/results/clientpositive/smb_mapjoin_17.q.out
    hive/trunk/ql/src/test/results/clientpositive/sort_merge_join_desc_1.q.out
    hive/trunk/ql/src/test/results/clientpositive/sort_merge_join_desc_2.q.out
    hive/trunk/ql/src/test/results/clientpositive/sort_merge_join_desc_3.q.out
    hive/trunk/ql/src/test/results/clientpositive/sort_merge_join_desc_4.q.out
    hive/trunk/ql/src/test/results/clientpositive/sort_merge_join_desc_5.q.out
    hive/trunk/ql/src/test/results/clientpositive/sort_merge_join_desc_6.q.out
    hive/trunk/ql/src/test/results/clientpositive/sort_merge_join_desc_7.q.out
    hive/trunk/ql/src/test/results/clientpositive/sort_merge_join_desc_8.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/annotate_stats_join.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_join0.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_join10.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_join11.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_join12.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_join13.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_join15.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_join16.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_join18.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_join18_multi_distinct.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_join20.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_join22.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_join24.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_join27.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_join30.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_join31.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_join32.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_smb_mapjoin_14.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_1.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_10.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_12.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_14.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_15.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_2.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_3.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_4.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_5.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_6.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_7.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_8.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_9.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/bucket_map_join_1.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/bucket_map_join_2.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/bucket_map_join_tez2.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/bucketmapjoin10.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/bucketmapjoin11.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/bucketmapjoin12.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/bucketmapjoin13.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/bucketmapjoin8.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/bucketmapjoin9.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/column_access_stats.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/count.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/cross_join.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/cross_product_check_1.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/cross_product_check_2.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/groupby_sort_1_23.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/groupby_sort_skew_1_23.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/having.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/innerjoin.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/join18.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/join18_multi_distinct.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/join40.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/join_alt_syntax.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/join_cond_pushdown_1.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/join_cond_pushdown_3.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/join_merge_multi_expressions.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/limit_partition_metadataonly.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/limit_pushdown.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/mapjoin_distinct.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/mapjoin_subquery2.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/mergejoins.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/metadata_only_queries.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/optimize_nullscan.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/order2.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/ppd_gby_join.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/ptf.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/ptf_streaming.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/reduce_deduplicate_exclude_join.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/semijoin.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/skewjoin.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/skewjoinopt1.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/skewjoinopt10.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/skewjoinopt15.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/skewjoinopt2.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/skewjoinopt9.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/smb_mapjoin_14.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/smb_mapjoin_16.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/smb_mapjoin_17.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/stats_only_null.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/subquery_exists.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/union.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/union11.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/union13.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/union14.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/union15.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/union16.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/union19.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/union2.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/union23.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/union3.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/union5.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/union7.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/union8.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/union9.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/union_remove_10.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/vector_between_in.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/vector_cast_constant.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/vector_count_distinct.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/vector_distinct_2.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/vector_groupby_3.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/vector_left_outer_join.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/vectorization_pushdown.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/vectorization_short_regress.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/vectorized_mapjoin.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/vectorized_nested_mapjoin.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/vectorized_ptf.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/vectorized_shufflejoin.q.out
    hive/trunk/ql/src/test/results/clientpositive/spark/vectorized_timestamp_funcs.q.out
    hive/trunk/ql/src/test/results/clientpositive/stats_only_null.q.out
    hive/trunk/ql/src/test/results/clientpositive/subq2.q.out
    hive/trunk/ql/src/test/results/clientpositive/subq_where_serialization.q.out
    hive/trunk/ql/src/test/results/clientpositive/subquery_exists.q.out
    hive/trunk/ql/src/test/results/clientpositive/subquery_exists_having.q.out
    hive/trunk/ql/src/test/results/clientpositive/subquery_in.q.out
    hive/trunk/ql/src/test/results/clientpositive/subquery_in_having.q.out
    hive/trunk/ql/src/test/results/clientpositive/subquery_multiinsert.q.java1.7.out
    hive/trunk/ql/src/test/results/clientpositive/subquery_notin.q.out
    hive/trunk/ql/src/test/results/clientpositive/subquery_notin_having.q.java1.7.out
    hive/trunk/ql/src/test/results/clientpositive/subquery_unqualcolumnrefs.q.out
    hive/trunk/ql/src/test/results/clientpositive/subquery_views.q.out
    hive/trunk/ql/src/test/results/clientpositive/symlink_text_input_format.q.out
    hive/trunk/ql/src/test/results/clientpositive/temp_table_display_colstats_tbllvl.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/auto_join0.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/auto_join30.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_1.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_10.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_11.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_12.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_14.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_15.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_2.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_3.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_4.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_5.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_7.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_8.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_9.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/bucket_map_join_tez2.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/correlationoptimizer1.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/count.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/cross_join.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/cross_product_check_1.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/cross_product_check_2.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/dynamic_partition_pruning.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/dynamic_partition_pruning_2.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/dynpart_sort_opt_vectorization.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/having.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/limit_pushdown.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/metadata_only_queries.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/metadataonly1.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/optimize_nullscan.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/ptf.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/ptf_streaming.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/selectDistinctStar.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/skewjoin.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/subquery_exists.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/subquery_in.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/tez_join_hash.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/tez_smb_1.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/tez_smb_main.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/tez_union.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/tez_union2.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/union2.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/union3.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/union5.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/union7.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/union8.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/union9.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/vector_between_in.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/vector_cast_constant.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/vector_count_distinct.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/vector_decimal_precision.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/vector_decimal_udf.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/vector_distinct_2.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/vector_groupby_3.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/vector_groupby_reduce.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/vector_left_outer_join.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/vector_partition_diff_num_cols.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/vector_partitioned_date_time.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/vectorization_limit.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/vectorization_pushdown.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/vectorization_short_regress.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/vectorized_distinct_gby.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/vectorized_dynamic_partition_pruning.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/vectorized_mapjoin.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/vectorized_nested_mapjoin.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/vectorized_parquet.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/vectorized_ptf.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/vectorized_shufflejoin.q.out
    hive/trunk/ql/src/test/results/clientpositive/tez/vectorized_timestamp_funcs.q.out
    hive/trunk/ql/src/test/results/clientpositive/type_widening.q.out
    hive/trunk/ql/src/test/results/clientpositive/udaf_number_format.q.out
    hive/trunk/ql/src/test/results/clientpositive/udaf_percentile_approx_23.q.out
    hive/trunk/ql/src/test/results/clientpositive/udf8.q.out
    hive/trunk/ql/src/test/results/clientpositive/udf_count.q.out
    hive/trunk/ql/src/test/results/clientpositive/udf_explode.q.out
    hive/trunk/ql/src/test/results/clientpositive/udtf_explode.q.out
    hive/trunk/ql/src/test/results/clientpositive/udtf_parse_url_tuple.q.out
    hive/trunk/ql/src/test/results/clientpositive/union.q.out
    hive/trunk/ql/src/test/results/clientpositive/union10.q.out
    hive/trunk/ql/src/test/results/clientpositive/union11.q.out
    hive/trunk/ql/src/test/results/clientpositive/union12.q.out
    hive/trunk/ql/src/test/results/clientpositive/union13.q.out
    hive/trunk/ql/src/test/results/clientpositive/union14.q.out
    hive/trunk/ql/src/test/results/clientpositive/union15.q.out
    hive/trunk/ql/src/test/results/clientpositive/union16.q.out
    hive/trunk/ql/src/test/results/clientpositive/union17.q.out
    hive/trunk/ql/src/test/results/clientpositive/union18.q.out
    hive/trunk/ql/src/test/results/clientpositive/union19.q.out
    hive/trunk/ql/src/test/results/clientpositive/union2.q.out
    hive/trunk/ql/src/test/results/clientpositive/union20.q.out
    hive/trunk/ql/src/test/results/clientpositive/union21.q.out
    hive/trunk/ql/src/test/results/clientpositive/union23.q.out
    hive/trunk/ql/src/test/results/clientpositive/union24.q.out
    hive/trunk/ql/src/test/results/clientpositive/union3.q.out
    hive/trunk/ql/src/test/results/clientpositive/union32.q.out
    hive/trunk/ql/src/test/results/clientpositive/union4.q.out
    hive/trunk/ql/src/test/results/clientpositive/union5.q.out
    hive/trunk/ql/src/test/results/clientpositive/union7.q.out
    hive/trunk/ql/src/test/results/clientpositive/union8.q.out
    hive/trunk/ql/src/test/results/clientpositive/union9.q.out
    hive/trunk/ql/src/test/results/clientpositive/union_remove_6_subq.q.out
    hive/trunk/ql/src/test/results/clientpositive/union_top_level.q.out
    hive/trunk/ql/src/test/results/clientpositive/union_view.q.out
    hive/trunk/ql/src/test/results/clientpositive/vector_aggregate_9.q.out
    hive/trunk/ql/src/test/results/clientpositive/vector_between_in.q.out
    hive/trunk/ql/src/test/results/clientpositive/vector_cast_constant.q.out
    hive/trunk/ql/src/test/results/clientpositive/vector_count_distinct.q.out
    hive/trunk/ql/src/test/results/clientpositive/vector_decimal_precision.q.out
    hive/trunk/ql/src/test/results/clientpositive/vector_decimal_udf.q.out
    hive/trunk/ql/src/test/results/clientpositive/vector_distinct_2.q.out
    hive/trunk/ql/src/test/results/clientpositive/vector_groupby_3.q.out
    hive/trunk/ql/src/test/results/clientpositive/vector_groupby_reduce.q.out
    hive/trunk/ql/src/test/results/clientpositive/vector_left_outer_join.q.out
    hive/trunk/ql/src/test/results/clientpositive/vector_partition_diff_num_cols.q.out
    hive/trunk/ql/src/test/results/clientpositive/vector_partitioned_date_time.q.out
    hive/trunk/ql/src/test/results/clientpositive/vectorization_limit.q.out
    hive/trunk/ql/src/test/results/clientpositive/vectorization_pushdown.q.out
    hive/trunk/ql/src/test/results/clientpositive/vectorization_short_regress.q.out
    hive/trunk/ql/src/test/results/clientpositive/vectorized_distinct_gby.q.out
    hive/trunk/ql/src/test/results/clientpositive/vectorized_mapjoin.q.out
    hive/trunk/ql/src/test/results/clientpositive/vectorized_nested_mapjoin.q.out
    hive/trunk/ql/src/test/results/clientpositive/vectorized_parquet.q.out
    hive/trunk/ql/src/test/results/clientpositive/vectorized_ptf.q.out
    hive/trunk/ql/src/test/results/clientpositive/vectorized_shufflejoin.q.out
    hive/trunk/ql/src/test/results/clientpositive/vectorized_timestamp_funcs.q.out

Modified: hive/trunk/contrib/src/test/results/clientpositive/serde_typedbytes2.q.out
URL: http://svn.apache.org/viewvc/hive/trunk/contrib/src/test/results/clientpositive/serde_typedbytes2.q.out?rev=1655226&r1=1655225&r2=1655226&view=diff
==============================================================================
--- hive/trunk/contrib/src/test/results/clientpositive/serde_typedbytes2.q.out (original)
+++ hive/trunk/contrib/src/test/results/clientpositive/serde_typedbytes2.q.out Wed Jan 28 06:25:44 2015
@@ -60,18 +60,14 @@ STAGE PLANS:
                     output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
                     serde: org.apache.hadoop.hive.contrib.serde2.TypedBytesSerDe
                 Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE
-                Select Operator
-                  expressions: _col0 (type: smallint), _col1 (type: string)
-                  outputColumnNames: _col0, _col1
+                File Output Operator
+                  compressed: false
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE
-                  File Output Operator
-                    compressed: false
-                    Statistics: Num rows: 500 Data size: 5312 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
-                        name: default.dest1
+                  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
+                      name: default.dest1
 
   Stage: Stage-7
     Conditional Operator

Modified: hive/trunk/contrib/src/test/results/clientpositive/serde_typedbytes3.q.out
URL: http://svn.apache.org/viewvc/hive/trunk/contrib/src/test/results/clientpositive/serde_typedbytes3.q.out?rev=1655226&r1=1655225&r2=1655226&view=diff
==============================================================================
--- hive/trunk/contrib/src/test/results/clientpositive/serde_typedbytes3.q.out (original)
+++ hive/trunk/contrib/src/test/results/clientpositive/serde_typedbytes3.q.out Wed Jan 28 06:25:44 2015
@@ -60,18 +60,14 @@ STAGE PLANS:
                     output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
                     serde: org.apache.hadoop.hive.contrib.serde2.TypedBytesSerDe
                 Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE
-                Select Operator
-                  expressions: _col0 (type: string), _col1 (type: string)
-                  outputColumnNames: _col0, _col1
+                File Output Operator
+                  compressed: false
                   Statistics: Num rows: 500 Data size: 5312 Basic stats: COMPLETE Column stats: NONE
-                  File Output Operator
-                    compressed: false
-                    Statistics: Num rows: 500 Data size: 5312 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
-                        name: default.dest1
+                  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
+                      name: default.dest1
 
   Stage: Stage-7
     Conditional Operator

Modified: hive/trunk/contrib/src/test/results/clientpositive/serde_typedbytes4.q.out
URL: http://svn.apache.org/viewvc/hive/trunk/contrib/src/test/results/clientpositive/serde_typedbytes4.q.out?rev=1655226&r1=1655225&r2=1655226&view=diff
==============================================================================
--- hive/trunk/contrib/src/test/results/clientpositive/serde_typedbytes4.q.out (original)
+++ hive/trunk/contrib/src/test/results/clientpositive/serde_typedbytes4.q.out Wed Jan 28 06:25:44 2015
@@ -60,14 +60,10 @@ STAGE PLANS:
                       output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
                       serde: org.apache.hadoop.hive.contrib.serde2.TypedBytesSerDe
                   Statistics: Num rows: 166 Data size: 1763 Basic stats: COMPLETE Column stats: NONE
-                  Select Operator
-                    expressions: _col0 (type: string), _col1 (type: string)
-                    outputColumnNames: _col0, _col1
+                  Reduce Output Operator
+                    key expressions: _col0 (type: string), _col1 (type: string)
+                    sort order: ++
                     Statistics: Num rows: 166 Data size: 1763 Basic stats: COMPLETE Column stats: NONE
-                    Reduce Output Operator
-                      key expressions: _col0 (type: string), _col1 (type: string)
-                      sort order: ++
-                      Statistics: Num rows: 166 Data size: 1763 Basic stats: COMPLETE Column stats: NONE
       Reduce Operator Tree:
         Select Operator
           expressions: KEY.reducesinkkey0 (type: string), KEY.reducesinkkey1 (type: string)

Modified: hive/trunk/contrib/src/test/results/clientpositive/udaf_example_avg.q.out
URL: http://svn.apache.org/viewvc/hive/trunk/contrib/src/test/results/clientpositive/udaf_example_avg.q.out?rev=1655226&r1=1655225&r2=1655226&view=diff
==============================================================================
--- hive/trunk/contrib/src/test/results/clientpositive/udaf_example_avg.q.out (original)
+++ hive/trunk/contrib/src/test/results/clientpositive/udaf_example_avg.q.out Wed Jan 28 06:25:44 2015
@@ -44,17 +44,13 @@ STAGE PLANS:
           mode: mergepartial
           outputColumnNames: _col0, _col1
           Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: NONE
-          Select Operator
-            expressions: _col0 (type: double), _col1 (type: double)
-            outputColumnNames: _col0, _col1
+          File Output Operator
+            compressed: false
             Statistics: Num rows: 1 Data size: 16 Basic stats: COMPLETE Column stats: NONE
-            File Output Operator
-              compressed: false
-              Statistics: Num rows: 1 Data size: 16 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
+            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

Modified: hive/trunk/contrib/src/test/results/clientpositive/udaf_example_group_concat.q.out
URL: http://svn.apache.org/viewvc/hive/trunk/contrib/src/test/results/clientpositive/udaf_example_group_concat.q.out?rev=1655226&r1=1655225&r2=1655226&view=diff
==============================================================================
--- hive/trunk/contrib/src/test/results/clientpositive/udaf_example_group_concat.q.out (original)
+++ hive/trunk/contrib/src/test/results/clientpositive/udaf_example_group_concat.q.out Wed Jan 28 06:25:44 2015
@@ -48,17 +48,13 @@ STAGE PLANS:
           mode: mergepartial
           outputColumnNames: _col0, _col1
           Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE
-          Select Operator
-            expressions: _col0 (type: string), _col1 (type: string)
-            outputColumnNames: _col0, _col1
+          File Output Operator
+            compressed: false
             Statistics: Num rows: 250 Data size: 2656 Basic stats: COMPLETE Column stats: NONE
-            File Output Operator
-              compressed: false
-              Statistics: Num rows: 250 Data size: 2656 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
+            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

Modified: hive/trunk/contrib/src/test/results/clientpositive/udaf_example_max.q.out
URL: http://svn.apache.org/viewvc/hive/trunk/contrib/src/test/results/clientpositive/udaf_example_max.q.out?rev=1655226&r1=1655225&r2=1655226&view=diff
==============================================================================
--- hive/trunk/contrib/src/test/results/clientpositive/udaf_example_max.q.out (original)
+++ hive/trunk/contrib/src/test/results/clientpositive/udaf_example_max.q.out Wed Jan 28 06:25:44 2015
@@ -49,17 +49,13 @@ STAGE PLANS:
           mode: mergepartial
           outputColumnNames: _col0, _col1
           Statistics: Num rows: 1 Data size: 168 Basic stats: COMPLETE Column stats: NONE
-          Select Operator
-            expressions: _col0 (type: string), _col1 (type: string)
-            outputColumnNames: _col0, _col1
+          File Output Operator
+            compressed: false
             Statistics: Num rows: 1 Data size: 168 Basic stats: COMPLETE Column stats: NONE
-            File Output Operator
-              compressed: false
-              Statistics: Num rows: 1 Data size: 168 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
+            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

Modified: hive/trunk/contrib/src/test/results/clientpositive/udaf_example_max_n.q.out
URL: http://svn.apache.org/viewvc/hive/trunk/contrib/src/test/results/clientpositive/udaf_example_max_n.q.out?rev=1655226&r1=1655225&r2=1655226&view=diff
==============================================================================
--- hive/trunk/contrib/src/test/results/clientpositive/udaf_example_max_n.q.out (original)
+++ hive/trunk/contrib/src/test/results/clientpositive/udaf_example_max_n.q.out Wed Jan 28 06:25:44 2015
@@ -44,17 +44,13 @@ STAGE PLANS:
           mode: mergepartial
           outputColumnNames: _col0, _col1
           Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL Column stats: NONE
-          Select Operator
-            expressions: _col0 (type: array<double>), _col1 (type: array<double>)
-            outputColumnNames: _col0, _col1
+          File Output Operator
+            compressed: false
             Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL Column stats: NONE
-            File Output Operator
-              compressed: false
-              Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL 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
+            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

Modified: hive/trunk/contrib/src/test/results/clientpositive/udaf_example_min.q.out
URL: http://svn.apache.org/viewvc/hive/trunk/contrib/src/test/results/clientpositive/udaf_example_min.q.out?rev=1655226&r1=1655225&r2=1655226&view=diff
==============================================================================
--- hive/trunk/contrib/src/test/results/clientpositive/udaf_example_min.q.out (original)
+++ hive/trunk/contrib/src/test/results/clientpositive/udaf_example_min.q.out Wed Jan 28 06:25:44 2015
@@ -49,17 +49,13 @@ STAGE PLANS:
           mode: mergepartial
           outputColumnNames: _col0, _col1
           Statistics: Num rows: 1 Data size: 168 Basic stats: COMPLETE Column stats: NONE
-          Select Operator
-            expressions: _col0 (type: string), _col1 (type: string)
-            outputColumnNames: _col0, _col1
+          File Output Operator
+            compressed: false
             Statistics: Num rows: 1 Data size: 168 Basic stats: COMPLETE Column stats: NONE
-            File Output Operator
-              compressed: false
-              Statistics: Num rows: 1 Data size: 168 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
+            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

Modified: hive/trunk/contrib/src/test/results/clientpositive/udaf_example_min_n.q.out
URL: http://svn.apache.org/viewvc/hive/trunk/contrib/src/test/results/clientpositive/udaf_example_min_n.q.out?rev=1655226&r1=1655225&r2=1655226&view=diff
==============================================================================
--- hive/trunk/contrib/src/test/results/clientpositive/udaf_example_min_n.q.out (original)
+++ hive/trunk/contrib/src/test/results/clientpositive/udaf_example_min_n.q.out Wed Jan 28 06:25:44 2015
@@ -44,17 +44,13 @@ STAGE PLANS:
           mode: mergepartial
           outputColumnNames: _col0, _col1
           Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL Column stats: NONE
-          Select Operator
-            expressions: _col0 (type: array<double>), _col1 (type: array<double>)
-            outputColumnNames: _col0, _col1
+          File Output Operator
+            compressed: false
             Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL Column stats: NONE
-            File Output Operator
-              compressed: false
-              Statistics: Num rows: 1 Data size: 0 Basic stats: PARTIAL 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
+            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

Modified: hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/ColumnInfo.java
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/ColumnInfo.java?rev=1655226&r1=1655225&r2=1655226&view=diff
==============================================================================
--- hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/ColumnInfo.java (original)
+++ hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/ColumnInfo.java Wed Jan 28 06:25:44 2015
@@ -208,13 +208,29 @@ public class ColumnInfo implements Seria
       return false;
     }
 
-    // TODO: why does this not compare tabAlias?
     ColumnInfo dest = (ColumnInfo)obj;
     if ((!checkEquals(internalName, dest.getInternalName())) ||
+        (!checkEquals(tabAlias, dest.getTabAlias())) ||
         (!checkEquals(alias, dest.getAlias())) ||
         (!checkEquals(getType(), dest.getType())) ||
         (isSkewedCol != dest.isSkewedCol()) ||
         (isVirtualCol != dest.getIsVirtualCol()) ||
+        (isHiddenVirtualCol != dest.isHiddenVirtualCol())) {
+      return false;
+    }
+
+    return true;
+  }
+
+  public boolean internalEquals(ColumnInfo dest) {
+    if (dest == null) {
+      return false;
+    }
+
+    if ((!checkEquals(internalName, dest.getInternalName())) ||
+        (!checkEquals(getType(), dest.getType())) ||
+        (isSkewedCol != dest.isSkewedCol()) ||
+        (isVirtualCol != dest.getIsVirtualCol()) ||
         (isHiddenVirtualCol != dest.isHiddenVirtualCol())) {
       return false;
     }

Modified: hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/RowSchema.java
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/RowSchema.java?rev=1655226&r1=1655225&r2=1655226&view=diff
==============================================================================
--- hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/RowSchema.java (original)
+++ hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/RowSchema.java Wed Jan 28 06:25:44 2015
@@ -20,7 +20,9 @@ package org.apache.hadoop.hive.ql.exec;
 
 import java.io.Serializable;
 import java.util.ArrayList;
+import java.util.HashSet;
 import java.util.Iterator;
+import java.util.Set;
 
 /**
  * RowSchema Implementation.
@@ -49,6 +51,57 @@ public class RowSchema implements Serial
     return signature;
   }
 
+  public ColumnInfo getColumnInfo(String internalName) {
+    for (ColumnInfo columnInfo: this.signature) {
+      if (columnInfo.getInternalName().equals(internalName)) {
+        return columnInfo;
+      }
+    }
+    return null;
+  }
+
+  public ColumnInfo getColumnInfo(String tabAlias, String alias) {
+    for (ColumnInfo columnInfo: this.signature) {
+      if (columnInfo.getTabAlias() == null) {
+        if (tabAlias == null) {
+          if(columnInfo.getAlias() != null && alias != null &&
+                  columnInfo.getAlias().equals(alias)) {
+            return columnInfo;
+          }
+        }
+      }
+      else {
+        if (tabAlias != null) {
+          if (columnInfo.getTabAlias().equals(tabAlias) &&
+                  columnInfo.getAlias() != null && alias != null &&
+                  columnInfo.getAlias().equals(alias)) {
+            return columnInfo;
+          }
+        }
+      }
+    }
+    return null;
+  }
+
+  public int getPosition(String internalName) {
+    int pos = -1;
+    for (ColumnInfo var : this.signature) {
+      ++pos;
+      if (var.getInternalName().equals(internalName)) {
+        return pos;
+      }
+    }
+    return -1;
+  }
+
+  public Set<String> getTableNames() {
+    Set<String> tableNames = new HashSet<String>();
+    for (ColumnInfo var : this.signature) {
+      tableNames.add(var.getTabAlias());
+    }
+    return tableNames;
+  }
+
   @Override
   public boolean equals(Object obj) {
     if (!(obj instanceof RowSchema) || (obj == null)) {
@@ -103,6 +156,13 @@ public class RowSchema implements Serial
         sb.append(',');
       }
       sb.append(col.toString());
+      sb.append('|');
+      sb.append('{');
+      sb.append(col.getTabAlias());
+      sb.append('}');
+      if (col.getAlias() != null) {
+        sb.append(col.getAlias());
+      }
     }
     sb.append(')');
     return sb.toString();

Modified: hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/SelectOperator.java
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/SelectOperator.java?rev=1655226&r1=1655225&r2=1655226&view=diff
==============================================================================
--- hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/SelectOperator.java (original)
+++ hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/SelectOperator.java Wed Jan 28 06:25:44 2015
@@ -171,7 +171,7 @@ public class SelectOperator extends Oper
         return false;
       }
 
-      if(!origColumn.equals(destColumn)) {
+      if(!origColumn.internalEquals(destColumn)) {
         return false;
       }
 

Modified: hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/Utilities.java
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/Utilities.java?rev=1655226&r1=1655225&r2=1655226&view=diff
==============================================================================
--- hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/Utilities.java (original)
+++ hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/exec/Utilities.java Wed Jan 28 06:25:44 2015
@@ -1068,7 +1068,6 @@ public final class Utilities {
       kryo.setInstantiatorStrategy(new StdInstantiatorStrategy());
       removeField(kryo, Operator.class, "colExprMap");
       removeField(kryo, ColumnInfo.class, "objectInspector");
-      removeField(kryo, MapWork.class, "opParseCtxMap");
       return kryo;
     };
   };

Modified: hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/AbstractSMBJoinProc.java
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/AbstractSMBJoinProc.java?rev=1655226&r1=1655225&r2=1655226&view=diff
==============================================================================
--- hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/AbstractSMBJoinProc.java (original)
+++ hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/AbstractSMBJoinProc.java Wed Jan 28 06:25:44 2015
@@ -26,8 +26,6 @@ import java.util.Map;
 import java.util.Set;
 import java.util.Stack;
 
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
 import org.apache.hadoop.hive.conf.HiveConf;
 import org.apache.hadoop.hive.metastore.api.Order;
 import org.apache.hadoop.hive.ql.ErrorMsg;
@@ -59,9 +57,6 @@ import org.apache.hadoop.util.Reflection
 //try to replace a bucket map join with a sorted merge map join
 abstract public class AbstractSMBJoinProc extends AbstractBucketJoinProc implements NodeProcessor {
 
-  private static final Log LOG = LogFactory
-    .getLog(SortedMergeBucketMapJoinOptimizer.class.getName());
-
   public AbstractSMBJoinProc(ParseContext pctx) {
     super(pctx);
   }
@@ -222,7 +217,6 @@ abstract public class AbstractSMBJoinPro
     //
     pGraphContext.getSmbMapJoinOps().add(smbJop);
     pGraphContext.getMapJoinOps().remove(mapJoinOp);
-    pGraphContext.getOpParseCtx().put(smbJop, pGraphContext.getOpParseCtx().get(mapJoinOp));
 
     return smbJop;
   }
@@ -430,6 +424,7 @@ abstract public class AbstractSMBJoinPro
   }
 
   // Can the join operator be converted to a bucket map-merge join operator ?
+  @SuppressWarnings("unchecked")
   protected boolean canConvertJoinToBucketMapJoin(
     JoinOperator joinOp,
     SortBucketJoinProcCtx context) throws SemanticException {
@@ -512,7 +507,6 @@ abstract public class AbstractSMBJoinPro
     SortBucketJoinProcCtx joinContext) throws SemanticException {
     MapJoinOperator mapJoinOp = new MapJoinProcessor().convertMapJoin(
       pGraphContext.getConf(),
-      pGraphContext.getOpParseCtx(),
       joinOp,
       joinOp.getConf().isLeftInputJoin(),
       joinOp.getConf().getBaseSrc(),

Modified: hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ColumnPruner.java
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ColumnPruner.java?rev=1655226&r1=1655225&r2=1655226&view=diff
==============================================================================
--- hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ColumnPruner.java (original)
+++ hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ColumnPruner.java Wed Jan 28 06:25:44 2015
@@ -19,7 +19,6 @@
 package org.apache.hadoop.hive.ql.optimizer;
 
 import java.util.ArrayList;
-import java.util.HashMap;
 import java.util.LinkedHashMap;
 import java.util.Map;
 
@@ -31,7 +30,6 @@ import org.apache.hadoop.hive.ql.exec.La
 import org.apache.hadoop.hive.ql.exec.LateralViewJoinOperator;
 import org.apache.hadoop.hive.ql.exec.LimitOperator;
 import org.apache.hadoop.hive.ql.exec.MapJoinOperator;
-import org.apache.hadoop.hive.ql.exec.Operator;
 import org.apache.hadoop.hive.ql.exec.PTFOperator;
 import org.apache.hadoop.hive.ql.exec.ReduceSinkOperator;
 import org.apache.hadoop.hive.ql.exec.ScriptOperator;
@@ -45,10 +43,8 @@ import org.apache.hadoop.hive.ql.lib.Nod
 import org.apache.hadoop.hive.ql.lib.NodeProcessor;
 import org.apache.hadoop.hive.ql.lib.Rule;
 import org.apache.hadoop.hive.ql.lib.RuleRegExp;
-import org.apache.hadoop.hive.ql.parse.OpParseContext;
 import org.apache.hadoop.hive.ql.parse.ParseContext;
 import org.apache.hadoop.hive.ql.parse.SemanticException;
-import org.apache.hadoop.hive.ql.plan.OperatorDesc;
 
 /**
  * Implementation of one of the rule-based optimization steps. ColumnPruner gets
@@ -60,7 +56,6 @@ import org.apache.hadoop.hive.ql.plan.Op
  */
 public class ColumnPruner implements Transform {
   protected ParseContext pGraphContext;
-  private HashMap<Operator<? extends OperatorDesc>, OpParseContext> opToParseCtxMap;
 
   /**
    * empty constructor.
@@ -80,7 +75,6 @@ public class ColumnPruner implements Tra
   @Override
   public ParseContext transform(ParseContext pactx) throws SemanticException {
     pGraphContext = pactx;
-    opToParseCtxMap = pGraphContext.getOpParseCtx();
 
     // generate pruned column list for all relevant operators
     ColumnPrunerProcCtx cppCtx = new ColumnPrunerProcCtx(pactx);

Modified: hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ColumnPrunerProcCtx.java
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ColumnPrunerProcCtx.java?rev=1655226&r1=1655225&r2=1655226&view=diff
==============================================================================
--- hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ColumnPrunerProcCtx.java (original)
+++ hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ColumnPrunerProcCtx.java Wed Jan 28 06:25:44 2015
@@ -26,12 +26,11 @@ import java.util.Map;
 import org.apache.hadoop.hive.ql.exec.ColumnInfo;
 import org.apache.hadoop.hive.ql.exec.CommonJoinOperator;
 import org.apache.hadoop.hive.ql.exec.Operator;
+import org.apache.hadoop.hive.ql.exec.RowSchema;
 import org.apache.hadoop.hive.ql.exec.SelectOperator;
 import org.apache.hadoop.hive.ql.exec.Utilities;
 import org.apache.hadoop.hive.ql.lib.NodeProcessorCtx;
-import org.apache.hadoop.hive.ql.parse.OpParseContext;
 import org.apache.hadoop.hive.ql.parse.ParseContext;
-import org.apache.hadoop.hive.ql.parse.RowResolver;
 import org.apache.hadoop.hive.ql.parse.SemanticException;
 import org.apache.hadoop.hive.ql.plan.ExprNodeDesc;
 import org.apache.hadoop.hive.ql.plan.OperatorDesc;
@@ -46,13 +45,10 @@ public class ColumnPrunerProcCtx impleme
 
   private final Map<Operator<? extends OperatorDesc>, List<String>> prunedColLists;
 
-  private final HashMap<Operator<? extends OperatorDesc>, OpParseContext> opToParseCtxMap;
-
   private final Map<CommonJoinOperator, Map<Byte, List<String>>> joinPrunedColLists;
 
   public ColumnPrunerProcCtx(ParseContext pctx) {
     this.pctx = pctx;
-    this.opToParseCtxMap = pctx.getOpParseCtx();
     prunedColLists = new HashMap<Operator<? extends OperatorDesc>, List<String>>();
     joinPrunedColLists = new HashMap<CommonJoinOperator, Map<Byte, List<String>>>();
   }
@@ -72,10 +68,6 @@ public class ColumnPrunerProcCtx impleme
     return prunedColLists.get(op);
   }
 
-  public HashMap<Operator<? extends OperatorDesc>, OpParseContext> getOpToParseCtxMap() {
-    return opToParseCtxMap;
-  }
-
   public Map<Operator<? extends OperatorDesc>, List<String>> getPrunedColLists() {
     return prunedColLists;
   }
@@ -183,11 +175,11 @@ public class ColumnPrunerProcCtx impleme
   /**
    * Create the list of internal columns for select tag of LV
    */
-  public List<String> getSelectColsFromLVJoin(RowResolver rr,
+  public List<String> getSelectColsFromLVJoin(RowSchema rs,
       List<String> colList) throws SemanticException {
     List<String> columns = new ArrayList<String>();
     for (String col : colList) {
-      if (rr.reverseLookup(col) != null) {
+      if (rs.getColumnInfo(col) != null) {
         columns.add(col);
       }
     }

Modified: hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ColumnPrunerProcFactory.java
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ColumnPrunerProcFactory.java?rev=1655226&r1=1655225&r2=1655226&view=diff
==============================================================================
--- hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ColumnPrunerProcFactory.java (original)
+++ hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ColumnPrunerProcFactory.java Wed Jan 28 06:25:44 2015
@@ -18,6 +18,16 @@
 
 package org.apache.hadoop.hive.ql.optimizer;
 
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.Stack;
+
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.hadoop.hive.ql.exec.AbstractMapJoinOperator;
@@ -42,8 +52,6 @@ import org.apache.hadoop.hive.ql.lib.Nod
 import org.apache.hadoop.hive.ql.lib.NodeProcessor;
 import org.apache.hadoop.hive.ql.lib.NodeProcessorCtx;
 import org.apache.hadoop.hive.ql.metadata.VirtualColumn;
-import org.apache.hadoop.hive.ql.parse.OpParseContext;
-import org.apache.hadoop.hive.ql.parse.RowResolver;
 import org.apache.hadoop.hive.ql.parse.SemanticException;
 import org.apache.hadoop.hive.ql.plan.AggregationDesc;
 import org.apache.hadoop.hive.ql.plan.ExprNodeColumnDesc;
@@ -66,16 +74,6 @@ import org.apache.hadoop.hive.ql.udf.ptf
 import org.apache.hadoop.hive.serde2.objectinspector.StructField;
 import org.apache.hadoop.hive.serde2.objectinspector.StructObjectInspector;
 
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.Stack;
-
 /**
  * Factory for generating the different node processors used by ColumnPruner.
  */
@@ -176,36 +174,34 @@ public final class ColumnPrunerProcFacto
 
       ColumnPrunerProcCtx cppCtx = (ColumnPrunerProcCtx) ctx;
       Operator<? extends OperatorDesc> op = (Operator<? extends OperatorDesc>) nd;
-      RowResolver inputRR = cppCtx.getParseContext().getOpParseCtx().get(op)
-          .getRowResolver();
+      RowSchema inputRS = op.getSchema();
 
       List<String> prunedCols = cppCtx.getPrunedColList(op.getChildOperators()
           .get(0));
       Operator<? extends OperatorDesc> parent = op.getParentOperators().get(0);
-      RowResolver parentRR = cppCtx.getParseContext().getOpParseCtx()
-          .get(parent).getRowResolver();
-      List<ColumnInfo> sig = parentRR.getRowSchema().getSignature();
+      RowSchema parentRS = parent.getSchema();
+      List<ColumnInfo> sig = parentRS.getSignature();
       List<String> colList = new ArrayList<String>();
       for (ColumnInfo cI : sig) {
         colList.add(cI.getInternalName());
       }
 
-      if (prunedCols.size() != inputRR.getRowSchema().getSignature().size()
+      if (prunedCols.size() != inputRS.getSignature().size()
           && !(op.getChildOperators().get(0) instanceof SelectOperator)) {
         ArrayList<ExprNodeDesc> exprs = new ArrayList<ExprNodeDesc>();
         ArrayList<String> outputs = new ArrayList<String>();
         Map<String, ExprNodeDesc> colExprMap = new HashMap<String, ExprNodeDesc>();
-        RowResolver outputRS = new RowResolver();
+        ArrayList<ColumnInfo> outputRS = new ArrayList<ColumnInfo>();
         for (String internalName : prunedCols) {
-          String[] nm = inputRR.reverseLookup(internalName);
-          ColumnInfo valueInfo = inputRR.get(nm[0], nm[1]);
+          ColumnInfo valueInfo = inputRS.getColumnInfo(internalName);
           ExprNodeDesc colDesc = new ExprNodeColumnDesc(valueInfo.getType(),
-              valueInfo.getInternalName(), nm[0], valueInfo.getIsVirtualCol());
+              valueInfo.getInternalName(), valueInfo.getTabAlias(), valueInfo.getIsVirtualCol());
           exprs.add(colDesc);
           outputs.add(internalName);
-          outputRS.put(nm[0], nm[1],
-              new ColumnInfo(internalName, valueInfo.getType(), nm[0],
-                  valueInfo.getIsVirtualCol(), valueInfo.isHiddenVirtualCol()));
+          ColumnInfo newCol = new ColumnInfo(internalName, valueInfo.getType(), valueInfo.getTabAlias(),
+                  valueInfo.getIsVirtualCol(), valueInfo.isHiddenVirtualCol());
+          newCol.setAlias(valueInfo.getAlias());
+          outputRS.add(newCol);
           colExprMap.put(internalName, colDesc);
         }
         SelectDesc select = new SelectDesc(exprs, outputs, false);
@@ -213,12 +209,9 @@ public final class ColumnPrunerProcFacto
         Operator<? extends OperatorDesc> child = op.getChildOperators().get(0);
         op.removeChild(child);
         SelectOperator sel = (SelectOperator) OperatorFactory.getAndMakeChild(
-            select, new RowSchema(outputRS.getColumnInfos()), op);
+            select, new RowSchema(outputRS), op);
         OperatorFactory.makeChild(sel, child);
 
-        OpParseContext parseCtx = new OpParseContext(outputRS);
-        cppCtx.getParseContext().getOpParseCtx().put(sel, parseCtx);
-
         sel.setColumnExprMap(colExprMap);
       }
 
@@ -270,17 +263,17 @@ public final class ColumnPrunerProcFacto
       if (!conf.forWindowing() && !Noop.class.isInstance(conf.getFuncDef().getTFunction())) {
         return super.process(nd, stack, cppCtx, nodeOutputs);
       }
+
       List<String> prunedCols = cppCtx.getPrunedColList(op.getChildOperators().get(0));
-      RowResolver oldRR = cppCtx.getOpToParseCtxMap().get(op).getRowResolver();
 
       WindowTableFunctionDef def = null;
       if (conf.forWindowing()) {
         def = (WindowTableFunctionDef) conf.getFuncDef();
         prunedCols = prunedColumnsList(prunedCols, def);
       }
-      ArrayList<ColumnInfo> sig = new ArrayList<ColumnInfo>();
-      RowResolver newRR = buildPrunedRR(prunedCols, oldRR, sig);
-      cppCtx.getOpToParseCtxMap().get(op).setRowResolver(newRR);
+
+      RowSchema oldRS = op.getSchema();
+      ArrayList<ColumnInfo> sig = buildPrunedRR(prunedCols, oldRS);
       op.getSchema().setSignature(sig);
 
       prunedCols = def == null ? prunedCols : prunedInputList(prunedCols, def);
@@ -288,18 +281,16 @@ public final class ColumnPrunerProcFacto
       return null;
     }
 
-    private RowResolver buildPrunedRR(List<String> prunedCols,
-        RowResolver oldRR, ArrayList<ColumnInfo> sig) throws SemanticException{
-      RowResolver newRR = new RowResolver();
+    private static ArrayList<ColumnInfo> buildPrunedRR(List<String> prunedCols,
+        RowSchema oldRS) throws SemanticException{
+      ArrayList<ColumnInfo> sig = new ArrayList<ColumnInfo>();
       HashSet<String> prunedColsSet = new HashSet<String>(prunedCols);
-      for(ColumnInfo cInfo : oldRR.getRowSchema().getSignature()) {
+      for(ColumnInfo cInfo : oldRS.getSignature()) {
         if ( prunedColsSet.contains(cInfo.getInternalName())) {
-          String[] nm = oldRR.reverseLookup(cInfo.getInternalName());
-          newRR.put(nm[0], nm[1], cInfo);
           sig.add(cInfo);
         }
       }
-      return newRR;
+      return sig;
     }
 
     /*
@@ -409,14 +400,14 @@ public final class ColumnPrunerProcFacto
 
       cppCtx.getPrunedColLists().put((Operator<? extends OperatorDesc>) nd,
           cols);
-      RowResolver inputRR = cppCtx.getOpToParseCtxMap().get(scanOp).getRowResolver();
-      setupNeededColumns(scanOp, inputRR, cols);
+      RowSchema inputRS = scanOp.getSchema();
+      setupNeededColumns(scanOp, inputRS, cols);
 
       return null;
     }
   }
 
-  public static void setupNeededColumns(TableScanOperator scanOp, RowResolver inputRR,
+  public static void setupNeededColumns(TableScanOperator scanOp, RowSchema inputRS,
       List<String> cols) throws SemanticException {
     List<Integer> neededColumnIds = new ArrayList<Integer>();
     List<String> neededColumnNames = new ArrayList<String>();
@@ -431,12 +422,11 @@ public final class ColumnPrunerProcFacto
     }
 
     for (String column : cols) {
-      String[] tabCol = inputRR.reverseLookup(column);
-      if (tabCol == null) {
+      ColumnInfo colInfo = inputRS.getColumnInfo(column);
+      if (colInfo == null) {
         continue;
       }
       referencedColumnNames.add(column);
-      ColumnInfo colInfo = inputRR.get(tabCol[0], tabCol[1]);
       if (colInfo.getIsVirtualCol()) {
         // part is also a virtual column, but part col should not in this
         // list.
@@ -449,7 +439,7 @@ public final class ColumnPrunerProcFacto
         //no need to pass virtual columns to reader.
         continue;
       }
-      int position = inputRR.getPosition(column);
+      int position = inputRS.getPosition(column);
       if (position >= 0) {
         // get the needed columns by id and name
         neededColumnIds.add(position);
@@ -481,7 +471,6 @@ public final class ColumnPrunerProcFacto
         Object... nodeOutputs) throws SemanticException {
       ReduceSinkOperator op = (ReduceSinkOperator) nd;
       ColumnPrunerProcCtx cppCtx = (ColumnPrunerProcCtx) ctx;
-      RowResolver resolver = cppCtx.getOpToParseCtxMap().get(op).getRowResolver();
       ReduceSinkDesc conf = op.getConf();
 
       List<String> colLists = new ArrayList<String>();
@@ -611,14 +600,13 @@ public final class ColumnPrunerProcFacto
 
       // these are from ColumnPrunerSelectProc
       List<String> cols = cppCtx.getPrunedColList(select);
-      RowResolver rr = cppCtx.getOpToParseCtxMap().get(op).getRowResolver();
-      if (rr.getColumnInfos().size() != cols.size()) {
+      RowSchema rs = op.getSchema();
+      if (rs.getSignature().size() != cols.size()) {
         ArrayList<ExprNodeDesc> colList = new ArrayList<ExprNodeDesc>();
         ArrayList<String> outputColNames = new ArrayList<String>();
         for (String col : cols) {
           // revert output cols of SEL(*) to ExprNodeColumnDesc
-          String[] tabcol = rr.reverseLookup(col);
-          ColumnInfo colInfo = rr.get(tabcol[0], tabcol[1]);
+          ColumnInfo colInfo = rs.getColumnInfo(col);
           ExprNodeColumnDesc colExpr = new ExprNodeColumnDesc(colInfo);
           colList.add(colExpr);
           outputColNames.add(col);
@@ -678,9 +666,9 @@ public final class ColumnPrunerProcFacto
       if (lvJoin != null) {
         // get columns for SEL(*) from LVJ
         if (cols != null) {
-          RowResolver rr = cppCtx.getOpToParseCtxMap().get(op).getRowResolver();
+          RowSchema rs = op.getSchema();
           cppCtx.getPrunedColLists().put(op,
-              cppCtx.getSelectColsFromLVJoin(rr, cols));
+              cppCtx.getSelectColsFromLVJoin(rs, cols));
         }
         return null;
       }
@@ -703,19 +691,12 @@ public final class ColumnPrunerProcFacto
         ArrayList<String> newOutputColumnNames = new ArrayList<String>();
         ArrayList<ColumnInfo> rs_oldsignature = op.getSchema().getSignature();
         ArrayList<ColumnInfo> rs_newsignature = new ArrayList<ColumnInfo>();
-        RowResolver old_rr = cppCtx.getOpToParseCtxMap().get(op)
-            .getRowResolver();
-        RowResolver new_rr = new RowResolver();
         for (String col : cols) {
           int index = originalOutputColumnNames.indexOf(col);
           newOutputColumnNames.add(col);
           newColList.add(originalColList.get(index));
           rs_newsignature.add(rs_oldsignature.get(index));
-          String[] tabcol = old_rr.reverseLookup(col);
-          ColumnInfo columnInfo = old_rr.get(tabcol[0], tabcol[1]);
-          new_rr.put(tabcol[0], tabcol[1], columnInfo);
         }
-        cppCtx.getOpToParseCtxMap().get(op).setRowResolver(new_rr);
         op.getSchema().setSignature(rs_newsignature);
         conf.setColList(newColList);
         conf.setOutputColumnNames(newOutputColumnNames);
@@ -785,8 +766,8 @@ public final class ColumnPrunerProcFacto
     ReduceSinkDesc reduceConf = reduce.getConf();
     Map<String, ExprNodeDesc> oldMap = reduce.getColumnExprMap();
     LOG.info("RS " + reduce.getIdentifier() + " oldColExprMap: " + oldMap);
-    RowResolver oldRR = cppCtx.getOpToParseCtxMap().get(reduce).getRowResolver();
-    ArrayList<ColumnInfo> old_signature = oldRR.getRowSchema().getSignature();
+    RowSchema oldRS = reduce.getSchema();
+    ArrayList<ColumnInfo> old_signature = oldRS.getSignature();
     ArrayList<ColumnInfo> signature = new ArrayList<ColumnInfo>(old_signature);
 
     List<String> valueColNames = reduceConf.getOutputValueColumnNames();
@@ -800,23 +781,21 @@ public final class ColumnPrunerProcFacto
       String outputCol = valueColNames.get(i);
       ExprNodeDesc outputColExpr = valueExprs.get(i);
       if (!retainFlags[i]) {
-        String[] nm = oldRR.reverseLookup(outputCol);
-        if (nm == null) {
+        ColumnInfo colInfo = oldRS.getColumnInfo(outputCol);
+        if (colInfo == null) {
           outputCol = Utilities.ReduceField.VALUE.toString() + "." + outputCol;
-          nm = oldRR.reverseLookup(outputCol);
+          colInfo = oldRS.getColumnInfo(outputCol);
         }
 
         // In case there are multiple columns referenced to the same column name, we won't
         // do row resolve once more because the ColumnInfo in row resolver is already removed
-        if (nm == null) {
+        if (colInfo == null) {
           continue;
         }
 
         // Only remove information of a column if it is not a key,
         // i.e. this column is not appearing in keyExprs of the RS
         if (ExprNodeDescUtils.indexOf(outputColExpr, keyExprs) == -1) {
-          ColumnInfo colInfo = oldRR.getFieldMap(nm[0]).remove(nm[1]);
-          oldRR.getInvRslvMap().remove(colInfo.getInternalName());
           oldMap.remove(outputCol);
           signature.remove(colInfo);
         }
@@ -827,7 +806,7 @@ public final class ColumnPrunerProcFacto
       }
     }
 
-    oldRR.getRowSchema().setSignature(signature);
+    oldRS.setSignature(signature);
     reduce.getSchema().setSignature(signature);
     reduceConf.setOutputValueColumnNames(newValueColNames);
     reduceConf.setValueCols(newValueExprs);
@@ -900,16 +879,12 @@ public final class ColumnPrunerProcFacto
     RowSchema inputSchema = op.getSchema();
     if (inputSchema != null) {
       ArrayList<ColumnInfo> rs = new ArrayList<ColumnInfo>();
-      RowResolver oldRR = ((ColumnPrunerProcCtx)ctx).getOpToParseCtxMap().get(op).getRowResolver();
-      RowResolver newRR = new RowResolver();
-      for(ColumnInfo i : oldRR.getRowSchema().getSignature()) {
+      RowSchema oldRS = op.getSchema();
+      for(ColumnInfo i : oldRS.getSignature()) {
         if ( cols.contains(i.getInternalName())) {
-          String[] nm = oldRR.reverseLookup(i.getInternalName());
-          newRR.put(nm[0], nm[1], i);
           rs.add(i);
         }
       }
-      ((ColumnPrunerProcCtx)ctx).getOpToParseCtxMap().get(op).setRowResolver(newRR);
       op.getSchema().setSignature(rs);
     }
   }
@@ -974,8 +949,7 @@ public final class ColumnPrunerProcFacto
      }
     }
 
-    RowResolver joinRR = cppCtx.getOpToParseCtxMap().get(op).getRowResolver();
-    RowResolver newJoinRR = new RowResolver();
+    RowSchema joinRS = op.getSchema();
     ArrayList<String> outputCols = new ArrayList<String>();
     ArrayList<ColumnInfo> rs = new ArrayList<ColumnInfo>();
     Map<String, ExprNodeDesc> newColExprMap = new HashMap<String, ExprNodeDesc>();
@@ -1050,9 +1024,7 @@ public final class ColumnPrunerProcFacto
 
     for (int i = 0; i < outputCols.size(); i++) {
       String internalName = outputCols.get(i);
-      String[] nm = joinRR.reverseLookup(internalName);
-      ColumnInfo col = joinRR.get(nm[0], nm[1]);
-      newJoinRR.put(nm[0], nm[1], col);
+      ColumnInfo col = joinRS.getColumnInfo(internalName);
       rs.add(col);
     }
 
@@ -1060,7 +1032,6 @@ public final class ColumnPrunerProcFacto
     op.setColumnExprMap(newColExprMap);
     conf.setOutputColumnNames(outputCols);
     op.getSchema().setSignature(rs);
-    cppCtx.getOpToParseCtxMap().get(op).setRowResolver(newJoinRR);
     cppCtx.getJoinPrunedColLists().put(op, prunedColLists);
   }
 

Modified: hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConstantPropagate.java
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConstantPropagate.java?rev=1655226&r1=1655225&r2=1655226&view=diff
==============================================================================
--- hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConstantPropagate.java (original)
+++ hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConstantPropagate.java Wed Jan 28 06:25:44 2015
@@ -26,7 +26,6 @@ import java.util.Map;
 
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
-import org.apache.hadoop.hive.conf.HiveConf.ConfVars;
 import org.apache.hadoop.hive.ql.exec.FileSinkOperator;
 import org.apache.hadoop.hive.ql.exec.FilterOperator;
 import org.apache.hadoop.hive.ql.exec.GroupByOperator;
@@ -44,10 +43,8 @@ import org.apache.hadoop.hive.ql.lib.Nod
 import org.apache.hadoop.hive.ql.lib.NodeProcessor;
 import org.apache.hadoop.hive.ql.lib.Rule;
 import org.apache.hadoop.hive.ql.lib.RuleRegExp;
-import org.apache.hadoop.hive.ql.parse.OpParseContext;
 import org.apache.hadoop.hive.ql.parse.ParseContext;
 import org.apache.hadoop.hive.ql.parse.SemanticException;
-import org.apache.hadoop.hive.ql.plan.OperatorDesc;
 
 /**
  * Implementation of one of the rule-based optimization steps. ConstantPropagate traverse the DAG
@@ -65,7 +62,6 @@ public class ConstantPropagate implement
 
   private static final Log LOG = LogFactory.getLog(ConstantPropagate.class);
   protected ParseContext pGraphContext;
-  private Map<Operator<? extends OperatorDesc>, OpParseContext> opToParseCtxMap;
 
   public ConstantPropagate() {}
 
@@ -78,10 +74,9 @@ public class ConstantPropagate implement
   @Override
   public ParseContext transform(ParseContext pactx) throws SemanticException {
     pGraphContext = pactx;
-    opToParseCtxMap = pGraphContext.getOpParseCtx();
 
     // generate pruned column list for all relevant operators
-    ConstantPropagateProcCtx cppCtx = new ConstantPropagateProcCtx(opToParseCtxMap);
+    ConstantPropagateProcCtx cppCtx = new ConstantPropagateProcCtx();
 
     // create a walker which walks the tree in a DFS manner while maintaining
     // the operator stack. The dispatcher