You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by za...@apache.org on 2025/11/07 18:12:38 UTC

(hive) branch master updated: HIVE-29250: Display effects of PlanModifierForASTConv in EXPLAIN CBO output (#6118)

This is an automated email from the ASF dual-hosted git repository.

zabetak pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hive.git


The following commit(s) were added to refs/heads/master by this push:
     new 6b5febcc559 HIVE-29250: Display effects of PlanModifierForASTConv in EXPLAIN CBO output (#6118)
6b5febcc559 is described below

commit 6b5febcc559e9f20ebea6fb04679477cf125144f
Author: Stamatis Zampetakis <za...@gmail.com>
AuthorDate: Fri Nov 7 19:12:32 2025 +0100

    HIVE-29250: Display effects of PlanModifierForASTConv in EXPLAIN CBO output (#6118)
---
 .../positive/iceberg_explain_formatted.q.out       |   2 +-
 .../merge_with_null_check_on_joining_col.q.out     | 330 +++++++++++----------
 .../src/test/results/positive/mv_iceberg_orc.q.out |  10 +-
 .../test/results/positive/mv_iceberg_orc2.q.out    |   7 +-
 .../test/results/positive/mv_iceberg_orc4.q.out    |  31 +-
 .../test/results/positive/mv_iceberg_orc5.q.out    |   2 +-
 .../test/results/positive/mv_iceberg_orc6.q.out    |  17 +-
 .../test/results/positive/mv_iceberg_orc7.q.out    |   2 +-
 .../insert_overwrite_directory.q.out               |   2 +-
 .../write_final_output_blobstore.q.out             |   4 +-
 .../txn/compactor/TestMaterializedViewRebuild.java |  17 +-
 .../optimizer/calcite/translator/ASTConverter.java |   7 +-
 .../hadoop/hive/ql/parse/CalcitePlanner.java       |  27 +-
 .../clientpositive/bucket_map_join_spark1.q.out    |   4 +-
 .../clientpositive/bucket_map_join_spark2.q.out    |   4 +-
 .../clientpositive/bucket_map_join_spark3.q.out    |   4 +-
 .../clientpositive/bucket_map_join_spark4.q.out    |   4 +-
 .../encryption_join_unencrypted_tbl.q.out          |   2 +-
 ...ption_join_with_different_encryption_keys.q.out |   2 +-
 .../clientpositive/llap/acid_bucket_pruning.q.out  |   2 +-
 .../clientpositive/llap/acid_nullscan.q.out        |   2 +-
 .../llap/alter_partition_coltype.q.out             |   6 +-
 .../clientpositive/llap/ambiguitycheck.q.out       |   2 +-
 .../clientpositive/llap/ambiguous_col.q.out        |  11 +-
 .../llap/analyze_table_null_partition.q.out        |   2 +-
 .../llap/annotate_stats_filter.q.out               |   2 +-
 .../results/clientpositive/llap/antijoin.q.out     |  34 ++-
 .../results/clientpositive/llap/antijoin2.q.out    | 118 ++++----
 .../clientpositive/llap/antijoin_conversion.q.out  |   2 +-
 .../clientpositive/llap/autoColumnStats_1.q.out    |   2 +-
 .../clientpositive/llap/autoColumnStats_2.q.out    |   2 +-
 .../llap/auto_join_reordering_values.q.out         |   2 +-
 .../llap/auto_sortmerge_join_1.q.out               |   6 +-
 .../llap/auto_sortmerge_join_11.q.out              |   4 +-
 .../llap/auto_sortmerge_join_12.q.out              |   2 +-
 .../llap/auto_sortmerge_join_2.q.out               |   4 +-
 .../llap/auto_sortmerge_join_3.q.out               |   6 +-
 .../llap/auto_sortmerge_join_4.q.out               |   6 +-
 .../llap/auto_sortmerge_join_5.q.out               |   6 +-
 .../llap/auto_sortmerge_join_7.q.out               |   6 +-
 .../llap/auto_sortmerge_join_8.q.out               |   6 +-
 .../test/results/clientpositive/llap/bucket1.q.out |   2 +-
 .../test/results/clientpositive/llap/bucket2.q.out |   2 +-
 .../test/results/clientpositive/llap/bucket3.q.out |   2 +-
 .../test/results/clientpositive/llap/bucket4.q.out |   2 +-
 .../results/clientpositive/llap/bucket_many.q.out  |   2 +-
 .../clientpositive/llap/bucket_map_join_tez2.q.out |   2 +-
 .../clientpositive/llap/bucket_map_join_tez3.q.out |  16 +-
 .../clientpositive/llap/bucket_num_reducers.q.out  |   2 +-
 .../clientpositive/llap/bucket_num_reducers2.q.out |   2 +-
 .../clientpositive/llap/bucketmapjoin1.q.out       |   8 +-
 .../clientpositive/llap/bucketmapjoin2.q.out       |   6 +-
 .../clientpositive/llap/bucketmapjoin3.q.out       |   4 +-
 .../clientpositive/llap/bucketmapjoin4.q.out       |   4 +-
 .../clientpositive/llap/bucketpruning1.q.out       |  56 ++--
 .../llap/cardinality_preserving_join_opt.q.out     |   8 +-
 .../llap/cardinality_preserving_join_opt2.q.out    |   2 +-
 .../clientpositive/llap/cast_null_to_complex.q.out |   2 +-
 .../llap/cbo_AggregateSortLimitRule.q.out          |   4 +-
 .../llap/cbo_aggregate_reduce_functions_rule.q.out |   2 +-
 .../llap/cbo_case_when_wrong_type.q.out            |   4 +-
 .../clientpositive/llap/cbo_constantfolding.q.out  |  10 +-
 .../llap/cbo_distribute_sort_cluster_by.q.out      |   6 +-
 .../llap/cbo_distribute_sort_cluster_by_pos.q.out  |   6 +-
 .../cbo_filter_proj_transpose_noinputref.q.out     |   2 +-
 .../llap/cbo_groupby_remove_key.q.out              |  29 +-
 .../clientpositive/llap/cbo_jdbc_joincost.q.out    |  24 +-
 .../llap/cbo_join_transitive_pred_loop_1.q.out     |   2 +-
 .../llap/cbo_join_transitive_pred_loop_2.q.out     |  25 +-
 .../llap/cbo_join_transitive_pred_loop_3.q.out     |   2 +-
 .../llap/cbo_join_transitive_pred_loop_4.q.out     |   2 +-
 .../results/clientpositive/llap/cbo_limit.q.out    |  39 +--
 ...cbo_order_distribute_sort_cluster_by_cnst.q.out |  10 +-
 .../llap/cbo_self_join_ambiguous_alias_cte.q.out   |   2 +-
 .../llap/cbo_self_join_ambiguous_alias_mv.q.out    |   2 +-
 .../cbo_self_join_ambiguous_alias_subquery.q.out   |   2 +-
 .../clientpositive/llap/cbo_stats_estimation.q.out |   4 +-
 .../llap/cbo_windowing_aggregate.q.out             |   2 +-
 .../results/clientpositive/llap/combine2.q.out     |   2 +-
 .../results/clientpositive/llap/comments.q.out     |   2 +-
 .../clientpositive/llap/compare_cols_null.q.out    |   2 +-
 .../results/clientpositive/llap/concat_op.q.out    |   6 +-
 .../llap/constantPropagateForSubQuery.q.out        |   2 +-
 .../llap/constraints_explain_ddl.q.out             | 244 +++++++--------
 .../llap/constraints_optimization.q.out            | 100 ++++---
 .../llap/count_distinct_subquery.q.out             |  11 +-
 .../llap/create_table_explain_ddl.q.out            |  52 ++--
 .../llap/create_view_when_mv_exists.q.out          |   4 +-
 .../llap/create_view_when_mv_exists2.q.out         |  18 +-
 .../clientpositive/llap/cte_cbo_plan_json.q.out    |   2 +-
 .../clientpositive/llap/cte_cbo_rewrite_0.q.out    | 130 ++++----
 .../results/clientpositive/llap/cte_join.q.out     |  15 +-
 .../results/clientpositive/llap/cte_mat_11.q.out   |  52 ++--
 .../results/clientpositive/llap/cte_mat_12.q.out   | 122 ++++----
 .../llap/current_date_timestamp.q.out              |   4 +-
 .../llap/date_timestamp_partition_filter.q.out     |   4 +-
 .../llap/disable_merge_for_bucketing.q.out         |   2 +-
 .../llap/dynamic_semijoin_reduction.q.out          |   2 +-
 .../llap/dynamic_semijoin_user_level.q.out         |   2 +-
 .../results/clientpositive/llap/empty_result.q.out |   5 +-
 .../llap/empty_result_foj_constraints.q.out        |   4 +-
 .../llap/empty_result_outerjoin.q.out              |  10 +-
 .../clientpositive/llap/empty_result_union.q.out   |  10 +-
 .../llap/excluded_rule_explain.q.out               |  12 +-
 .../llap/explain_ddl_nested_part.q.out             |   4 +-
 .../results/clientpositive/llap/explain_jdbc.q.out |   4 +-
 .../llap/explain_systest_password.q.out            |   6 +-
 .../clientpositive/llap/explainuser_1.q.out        | 135 +++++----
 .../llap/external_jdbc_join_mv.q.out               |   2 +-
 .../llap/external_jdbc_rowcount.q.out              |  56 ++--
 .../clientpositive/llap/external_jdbc_table.q.out  |  24 +-
 .../llap/filter_join_breaktask.q.out               |   2 +-
 .../clientpositive/llap/filter_literals.q.out      |  12 +-
 .../results/clientpositive/llap/filter_union.q.out |   5 +-
 .../clientpositive/llap/fouter_join_ppr.q.out      |   8 +-
 .../results/clientpositive/llap/groupby13.q.out    |   2 +-
 .../clientpositive/llap/groupby_map_ppr.q.out      |   2 +-
 .../llap/groupby_map_ppr_multi_distinct.q.out      |   2 +-
 .../results/clientpositive/llap/groupby_ppr.q.out  |   2 +-
 .../llap/groupby_ppr_multi_distinct.q.out          |   2 +-
 .../clientpositive/llap/groupby_sort_1_23.q.out    |  40 +--
 .../clientpositive/llap/groupby_sort_6.q.out       |   6 +-
 .../llap/groupby_sort_skew_1_23.q.out              |  40 +--
 .../llap/having_distinct_function.q.out            |  11 +-
 .../clientpositive/llap/in_typecheck_char.q.out    |  14 +-
 .../test/results/clientpositive/llap/input23.q.out |   2 +-
 .../test/results/clientpositive/llap/input4.q.out  |   2 +-
 .../test/results/clientpositive/llap/input42.q.out |   6 +-
 .../results/clientpositive/llap/input_part1.q.out  |   2 +-
 .../results/clientpositive/llap/input_part9.q.out  |   2 +-
 .../clientpositive/llap/intersect_all_rj.q.out     |   2 +-
 .../llap/jdbc_filter_expand_row_operator.q.out     |   8 +-
 .../llap/jdbc_project_pushdown.q.out               |  60 ++--
 .../clientpositive/llap/jdbc_split_filter.q.out    |  24 +-
 .../llap/jdbc_table_dml_postgres.q.out             |   5 +-
 .../llap/jdbc_table_limit_postgres.q.out           |   8 +-
 .../llap/jdbc_table_with_schema_mariadb.q.out      |  32 +-
 .../llap/jdbc_table_with_schema_mssql.q.out        |  24 +-
 .../llap/jdbc_table_with_schema_oracle.q.out       |  24 +-
 .../llap/jdbc_table_with_schema_postgres.q.out     |  24 +-
 .../test/results/clientpositive/llap/join17.q.out  |   2 +-
 .../test/results/clientpositive/llap/join26.q.out  |   2 +-
 .../test/results/clientpositive/llap/join32.q.out  |   2 +-
 .../clientpositive/llap/join32_lessSize.q.out      |   8 +-
 .../test/results/clientpositive/llap/join33.q.out  |   2 +-
 .../test/results/clientpositive/llap/join34.q.out  |   2 +-
 .../test/results/clientpositive/llap/join35.q.out  |   2 +-
 .../test/results/clientpositive/llap/join46.q.out  |   2 +-
 .../test/results/clientpositive/llap/join9.q.out   |   2 +-
 .../clientpositive/llap/join_filters_overlap.q.out |  10 +-
 .../llap/join_is_not_distinct_from.q.out           |  38 +--
 .../clientpositive/llap/join_nullsafe.q.out        |  38 +--
 .../clientpositive/llap/join_reorder5.q.out        |  29 +-
 .../clientpositive/llap/join_using_clause.q.out    |  16 +-
 .../clientpositive/llap/lateral_view_cbo.q.out     |   8 +-
 .../clientpositive/llap/list_bucket_dml_12.q.out   |   6 +-
 .../clientpositive/llap/list_bucket_dml_13.q.out   |   4 +-
 .../clientpositive/llap/list_bucket_dml_14.q.out   |   2 +-
 .../clientpositive/llap/list_bucket_dml_2.q.out    |   2 +-
 .../clientpositive/llap/list_bucket_dml_4.q.out    |   2 +-
 .../clientpositive/llap/list_bucket_dml_6.q.out    |   6 +-
 .../clientpositive/llap/list_bucket_dml_7.q.out    |   6 +-
 .../clientpositive/llap/list_bucket_dml_8.q.out    |   4 +-
 .../clientpositive/llap/list_bucket_dml_9.q.out    |   2 +-
 .../llap/list_bucket_query_multiskew_1.q.out       |   4 +-
 .../llap/list_bucket_query_multiskew_2.q.out       |   2 +-
 .../llap/list_bucket_query_multiskew_3.q.out       |   8 +-
 .../llap/list_bucket_query_oneskew_1.q.out         |   6 +-
 .../llap/list_bucket_query_oneskew_2.q.out         |   4 +-
 .../clientpositive/llap/louter_join_ppr.q.out      |   8 +-
 .../test/results/clientpositive/llap/macro.q.out   |   6 +-
 .../clientpositive/llap/mapjoin_mapjoin.q.out      |   2 +-
 .../results/clientpositive/llap/masking_12.q.out   |   2 +-
 .../results/clientpositive/llap/masking_3.q.out    |  10 +-
 .../results/clientpositive/llap/masking_4.q.out    |   2 +-
 .../clientpositive/llap/masking_mv_by_text.q.out   |   3 +-
 .../clientpositive/llap/masking_mv_by_text_2.q.out |  22 +-
 .../llap/materialized_view_count_distinct.q.out    |   6 +-
 .../llap/materialized_view_create_rewrite_10.q.out |   5 +-
 .../llap/materialized_view_create_rewrite_11.q.out |   2 +-
 .../llap/materialized_view_create_rewrite_12.q.out |   3 +-
 .../llap/materialized_view_create_rewrite_6.q.out  |  10 +-
 ...ialized_view_create_rewrite_6_aggr_2joins.q.out |   2 +-
 ...ialized_view_create_rewrite_6_aggr_3joins.q.out |   4 +-
 .../llap/materialized_view_create_rewrite_7.q.out  |   9 +-
 .../llap/materialized_view_create_rewrite_8.q.out  |   6 +-
 .../llap/materialized_view_create_rewrite_9.q.out  |  23 +-
 .../materialized_view_create_rewrite_nulls.q.out   |   4 +-
 .../llap/materialized_view_parquet.q.out           |  42 +--
 .../llap/materialized_view_rewrite_11.q.out        |  19 +-
 .../llap/materialized_view_rewrite_by_text.q.out   |  22 +-
 .../materialized_view_rewrite_by_text_10.q.out     |   2 +-
 .../llap/materialized_view_rewrite_by_text_2.q.out |   6 +-
 .../llap/materialized_view_rewrite_by_text_3.q.out |   5 +-
 .../llap/materialized_view_rewrite_by_text_4.q.out |   8 +-
 .../llap/materialized_view_rewrite_by_text_5.q.out |   5 +-
 .../llap/materialized_view_rewrite_by_text_6.q.out |  47 +--
 .../llap/materialized_view_rewrite_by_text_7.q.out |   2 +-
 .../llap/materialized_view_rewrite_by_text_8.q.out |  18 +-
 .../llap/materialized_view_rewrite_by_text_9.q.out |  40 +--
 .../materialized_view_rewrite_in_between.q.out     |  15 +-
 ...terialized_view_rewrite_ssb_grouping_sets.q.out |  35 ++-
 ...rialized_view_rewrite_ssb_grouping_sets_2.q.out |   4 +-
 .../llap/materialized_view_rewrite_window.q.out    |  25 +-
 .../clientpositive/llap/metadataonly1.q.out        |  18 +-
 .../clientpositive/llap/multi_count_distinct.q.out |   4 +-
 .../llap/multi_count_distinct_null.q.out           |  11 +-
 .../clientpositive/llap/multi_in_clause.q.out      |   4 +-
 .../clientpositive/llap/multigroupbydistinct.q.out |  30 +-
 .../llap/murmur_hash_migration.q.out               |   4 +-
 .../llap/offset_limit_global_optimizer.q.out       |   8 +-
 .../clientpositive/llap/order_by_expr_2.q.out      |   2 +-
 .../clientpositive/llap/outer_join_ppr.q.out       |   4 +-
 .../llap/parquet_vectorization_0.q.out             |  10 +-
 .../llap/partition_explain_ddl.q.out               |  16 +-
 .../llap/partition_params_xinclude.q.out           |   6 +-
 .../clientpositive/llap/partition_pruning.q.out    |   6 +-
 .../llap/partition_unix_timestamp.q.out            |   2 +-
 ql/src/test/results/clientpositive/llap/pcr.q.out  |   4 +-
 ql/src/test/results/clientpositive/llap/pcs.q.out  |   4 +-
 .../results/clientpositive/llap/plan_json.q.out    |   2 +-
 .../results/clientpositive/llap/pointlookup2.q.out |  16 +-
 .../results/clientpositive/llap/pointlookup3.q.out |  12 +-
 .../results/clientpositive/llap/pointlookup6.q.out |   4 +-
 .../clientpositive/llap/ppd_join_filter.q.out      |   8 +-
 .../clientpositive/llap/ppd_union_view.q.out       |   4 +-
 .../test/results/clientpositive/llap/ppd_vc.q.out  |   4 +-
 .../results/clientpositive/llap/prepare_plan.q.out |   2 +-
 .../clientpositive/llap/qualify_distinct.q.out     |   9 +-
 .../results/clientpositive/llap/qualify_gby.q.out  |   2 +-
 .../llap/rand_partitionpruner1.q.out               |   2 +-
 .../llap/rand_partitionpruner2.q.out               |   2 +-
 .../llap/rand_partitionpruner3.q.out               |   4 +-
 .../clientpositive/llap/router_join_ppr.q.out      |   8 +-
 .../llap/rule_exclusion_config.q.out               |  27 +-
 .../results/clientpositive/llap/semijoin.q.out     |  23 +-
 .../results/clientpositive/llap/semijoin6.q.out    |  11 +-
 .../results/clientpositive/llap/sharedwork.q.out   |   4 +-
 .../llap/sharedwork_mapjoin_datasize_check.q.out   |   6 +-
 .../clientpositive/llap/smb_mapjoin_15.q.out       |  10 +-
 .../test/results/clientpositive/llap/stats0.q.out  |   4 +-
 .../test/results/clientpositive/llap/stats11.q.out |   4 +-
 .../results/clientpositive/llap/subquery_ALL.q.out | 102 ++++---
 .../results/clientpositive/llap/subquery_ANY.q.out | 161 +++++-----
 .../subquery_complex_correlation_predicates.q.out  |  33 ++-
 .../clientpositive/llap/subquery_corr_join.q.out   |   2 +-
 .../llap/subquery_exists_windowfunc.q.out          |  28 +-
 .../llap/subquery_full_aggregate.q.out             |   5 +-
 .../subquery_in_invalid_intermediate_plan.q.out    |  66 +++--
 .../clientpositive/llap/subquery_join.q.out        |   6 +-
 .../llap/subquery_join_rewrite.q.out               | 121 ++++----
 .../clientpositive/llap/subquery_multi.q.out       |   6 +-
 .../clientpositive/llap/subquery_notexists.q.out   |   4 +-
 .../clientpositive/llap/subquery_notin.q.out       |  31 +-
 .../clientpositive/llap/subquery_scalar.q.out      |   4 +-
 .../llap/temp_table_alter_partition_coltype.q.out  |   6 +-
 .../llap/temp_table_partition_pruning.q.out        |   6 +-
 .../llap/tez_fixed_bucket_pruning.q.out            |   8 +-
 .../llap/tez_join_result_complex.q.out             |   4 +-
 .../clientpositive/llap/tez_union_group_by.q.out   |  49 +--
 .../clientpositive/llap/topnkey_gby_limit.q.out    |   6 +-
 .../clientpositive/llap/topnkey_windowing.q.out    |   4 +-
 .../test/results/clientpositive/llap/tpch18.q.out  |   6 +-
 .../clientpositive/llap/transitive_not_null.q.out  |  91 +++---
 .../llap/truncate_column_list_bucket.q.out         |   4 +-
 .../clientpositive/llap/udaf_percentile_disc.q.out |   5 +-
 .../results/clientpositive/llap/udf_reflect2.q.out |   2 +-
 .../results/clientpositive/llap/udtf_explode.q.out |   9 +-
 .../clientpositive/llap/udtf_with_unionall.q.out   |  50 ++--
 .../test/results/clientpositive/llap/union22.q.out |   5 +-
 .../test/results/clientpositive/llap/union24.q.out |  15 +-
 .../llap/union_all_filter_transpose.q.out          |  15 +-
 ...nion_all_filter_transpose_pruned_operands.q.out |   2 +-
 .../clientpositive/llap/union_literals.q.out       |  24 +-
 .../clientpositive/llap/uniontype_cbo.q.out        |   7 +-
 .../test/results/clientpositive/llap/values.q.out  |  29 +-
 .../results/clientpositive/llap/values_alias.q.out |   5 +-
 .../llap/vector_orc_nested_column_pruning.q.out    |   2 +-
 .../clientpositive/llap/vectorization_0.q.out      |  10 +-
 ...iew_top_relnode_not_project_authorization.q.out |  20 +-
 .../clientpositive/llap/views_explain_ddl.q.out    |  42 +--
 .../clientpositive/llap/windowing_distinct.q.out   |   6 +-
 .../perf/tpcds30tb/cte/cbo_query11.q.out           |   4 +-
 .../perf/tpcds30tb/cte/cbo_query13.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query14.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query15.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query16.q.out           |  49 +--
 .../perf/tpcds30tb/cte/cbo_query19.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query2.q.out            |   2 +-
 .../perf/tpcds30tb/cte/cbo_query21.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query23.q.out           | 179 +++++------
 .../perf/tpcds30tb/cte/cbo_query24.q.out           |   8 +-
 .../perf/tpcds30tb/cte/cbo_query25.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query28.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query29.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query3.q.out            |   2 +-
 .../perf/tpcds30tb/cte/cbo_query31.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query32.q.out           |  47 +--
 .../perf/tpcds30tb/cte/cbo_query33.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query35.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query38.q.out           |  97 +++---
 .../perf/tpcds30tb/cte/cbo_query39.q.out           |   4 +-
 .../perf/tpcds30tb/cte/cbo_query4.q.out            |   4 +-
 .../perf/tpcds30tb/cte/cbo_query40.q.out           |   4 +-
 .../perf/tpcds30tb/cte/cbo_query42.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query43.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query44.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query45.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query46.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query47.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query48.q.out           |  33 ++-
 .../perf/tpcds30tb/cte/cbo_query49.q.out           |   6 +-
 .../perf/tpcds30tb/cte/cbo_query5.q.out            |   2 +-
 .../perf/tpcds30tb/cte/cbo_query50.q.out           |   4 +-
 .../perf/tpcds30tb/cte/cbo_query51.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query52.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query53.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query56.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query57.q.out           |   6 +-
 .../perf/tpcds30tb/cte/cbo_query58.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query59.q.out           |   4 +-
 .../perf/tpcds30tb/cte/cbo_query6.q.out            |   2 +-
 .../perf/tpcds30tb/cte/cbo_query60.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query61.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query62.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query63.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query64.q.out           |   4 +-
 .../perf/tpcds30tb/cte/cbo_query65.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query67.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query68.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query72.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query74.q.out           |   4 +-
 .../perf/tpcds30tb/cte/cbo_query75.q.out           |  14 +-
 .../perf/tpcds30tb/cte/cbo_query76.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query77.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query78.q.out           |   8 +-
 .../perf/tpcds30tb/cte/cbo_query79.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query8.q.out            |   2 +-
 .../perf/tpcds30tb/cte/cbo_query80.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query83.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query85.q.out           |   4 +-
 .../perf/tpcds30tb/cte/cbo_query87.q.out           | 111 +++----
 .../perf/tpcds30tb/cte/cbo_query88.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query89.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query92.q.out           |  47 +--
 .../perf/tpcds30tb/cte/cbo_query93.q.out           |   2 +-
 .../perf/tpcds30tb/cte/cbo_query94.q.out           |  49 +--
 .../perf/tpcds30tb/cte/cbo_query95.q.out           |  63 ++--
 .../perf/tpcds30tb/cte/cbo_query96.q.out           |  33 ++-
 .../perf/tpcds30tb/cte/cbo_query97.q.out           |  43 +--
 .../perf/tpcds30tb/cte/cbo_query99.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query11.q.out           |   4 +-
 .../perf/tpcds30tb/tez/cbo_query13.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query14.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query15.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query16.q.out           |  49 +--
 .../perf/tpcds30tb/tez/cbo_query19.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query2.q.out            |   2 +-
 .../perf/tpcds30tb/tez/cbo_query21.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query23.q.out           | 179 +++++------
 .../perf/tpcds30tb/tez/cbo_query24.q.out           |   8 +-
 .../perf/tpcds30tb/tez/cbo_query25.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query28.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query29.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query3.q.out            |   2 +-
 .../perf/tpcds30tb/tez/cbo_query31.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query32.q.out           |  47 +--
 .../perf/tpcds30tb/tez/cbo_query33.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query35.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query38.q.out           |  97 +++---
 .../perf/tpcds30tb/tez/cbo_query39.q.out           |   4 +-
 .../perf/tpcds30tb/tez/cbo_query4.q.out            |   4 +-
 .../perf/tpcds30tb/tez/cbo_query40.q.out           |   4 +-
 .../perf/tpcds30tb/tez/cbo_query42.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query43.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query44.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query45.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query46.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query47.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query48.q.out           |  33 ++-
 .../perf/tpcds30tb/tez/cbo_query49.q.out           |   6 +-
 .../perf/tpcds30tb/tez/cbo_query5.q.out            |   2 +-
 .../perf/tpcds30tb/tez/cbo_query50.q.out           |   4 +-
 .../perf/tpcds30tb/tez/cbo_query51.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query52.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query53.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query56.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query57.q.out           |   6 +-
 .../perf/tpcds30tb/tez/cbo_query58.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query59.q.out           |   4 +-
 .../perf/tpcds30tb/tez/cbo_query6.q.out            |   2 +-
 .../perf/tpcds30tb/tez/cbo_query60.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query61.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query62.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query63.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query64.q.out           |   4 +-
 .../perf/tpcds30tb/tez/cbo_query65.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query67.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query68.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query72.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query74.q.out           |   4 +-
 .../perf/tpcds30tb/tez/cbo_query75.q.out           |  14 +-
 .../perf/tpcds30tb/tez/cbo_query76.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query77.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query78.q.out           |   8 +-
 .../perf/tpcds30tb/tez/cbo_query79.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query8.q.out            |   2 +-
 .../perf/tpcds30tb/tez/cbo_query80.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query83.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query85.q.out           |   4 +-
 .../perf/tpcds30tb/tez/cbo_query87.q.out           | 111 +++----
 .../perf/tpcds30tb/tez/cbo_query88.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query89.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query92.q.out           |  47 +--
 .../perf/tpcds30tb/tez/cbo_query93.q.out           |   2 +-
 .../perf/tpcds30tb/tez/cbo_query94.q.out           |  49 +--
 .../perf/tpcds30tb/tez/cbo_query95.q.out           |  63 ++--
 .../perf/tpcds30tb/tez/cbo_query96.q.out           |  33 ++-
 .../perf/tpcds30tb/tez/cbo_query97.q.out           |  43 +--
 .../perf/tpcds30tb/tez/cbo_query99.q.out           |   2 +-
 .../clientpositive/serde_user_properties.q.out     |   4 +-
 421 files changed, 3231 insertions(+), 2989 deletions(-)

diff --git a/iceberg/iceberg-handler/src/test/results/positive/iceberg_explain_formatted.q.out b/iceberg/iceberg-handler/src/test/results/positive/iceberg_explain_formatted.q.out
index de466d65023..895e15cba78 100644
--- a/iceberg/iceberg-handler/src/test/results/positive/iceberg_explain_formatted.q.out
+++ b/iceberg/iceberg-handler/src/test/results/positive/iceberg_explain_formatted.q.out
@@ -14,4 +14,4 @@ POSTHOOK: query: explain formatted select * from test
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@test
 POSTHOOK: Output: hdfs://### HDFS PATH ###
-{"CBOPlan":"{\n  \"rels\": [\n    {\n      \"id\": \"0\",\n      \"relOp\": \"org.apache.hadoop.hive.ql.optimizer.calcite.reloperators.HiveTableScan\",\n      \"table\": [\n        \"default\",\n        \"test\"\n      ],\n      \"table:alias\": \"test\",\n      \"inputs\": [],\n      \"rowCount\": 1.0,\n      \"avgRowSize\": 8.0,\n      \"rowType\": {\n        \"fields\": [\n          {\n            \"type\": \"INTEGER\",\n            \"nullable\": true,\n            \"name\": \"a\"\n   [...]
+{"CBOPlan":"{\n  \"rels\": [\n    {\n      \"id\": \"0\",\n      \"relOp\": \"org.apache.hadoop.hive.ql.optimizer.calcite.reloperators.HiveTableScan\",\n      \"table\": [\n        \"default\",\n        \"test\"\n      ],\n      \"table:alias\": \"test\",\n      \"inputs\": [],\n      \"rowCount\": 1.0,\n      \"avgRowSize\": 8.0,\n      \"rowType\": {\n        \"fields\": [\n          {\n            \"type\": \"INTEGER\",\n            \"nullable\": true,\n            \"name\": \"a\"\n   [...]
diff --git a/iceberg/iceberg-handler/src/test/results/positive/merge_with_null_check_on_joining_col.q.out b/iceberg/iceberg-handler/src/test/results/positive/merge_with_null_check_on_joining_col.q.out
index 023edb48c58..64bbd1b55de 100644
--- a/iceberg/iceberg-handler/src/test/results/positive/merge_with_null_check_on_joining_col.q.out
+++ b/iceberg/iceberg-handler/src/test/results/positive/merge_with_null_check_on_joining_col.q.out
@@ -71,55 +71,56 @@ POSTHOOK: Input: default@source
 POSTHOOK: Input: default@target
 POSTHOOK: Output: default@target
 CBO PLAN:
-HiveUnion(all=[true])
-  HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], t__a=[$5], t__b=[+($6, 100)], t__c=[$7])
-    HiveJoin(condition=[AND(=($5, $8), =($6, $9))], joinType=[inner], algorithm=[none], cost=[not available])
-      HiveProject(t__partition__spec__id=[$3], t__partition__hash=[$4], t__file__path=[$5], t__row__position=[$6], t__partition__projection=[$7], t__a=[$0], t__b=[$1], t__c=[$2])
-        HiveFilter(condition=[AND(>($0, 10), IS NOT NULL($1))])
-          HiveTableScan(table=[[default, target]], table:alias=[target])
-      HiveProject(a=[$0], b=[$1])
-        HiveFilter(condition=[AND(>($0, 10), IS NOT NULL($1))])
-          HiveTableScan(table=[[default, source]], table:alias=[s])
-  HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], a=[$7], b=[$8], c=[$9])
-    HiveFilter(condition=[AND(IS NULL($5), IS NULL($6))])
-      HiveJoin(condition=[AND(=($5, $7), =($6, $8))], joinType=[right], algorithm=[none], cost=[not available])
-        HiveProject(t__partition__spec__id=[$3], t__partition__hash=[$4], t__file__path=[$5], t__row__position=[$6], t__partition__projection=[$7], t__a=[$0], t__b=[$1])
-          HiveFilter(condition=[AND(>($0, 20), IS NOT NULL($1))])
+HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], t__a=[$5], t__b=[$6], t__c=[$7])
+  HiveUnion(all=[true])
+    HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], t__a=[$5], t__b=[+($6, 100)], t__c=[$7])
+      HiveJoin(condition=[AND(=($5, $8), =($6, $9))], joinType=[inner], algorithm=[none], cost=[not available])
+        HiveProject(t__partition__spec__id=[$3], t__partition__hash=[$4], t__file__path=[$5], t__row__position=[$6], t__partition__projection=[$7], t__a=[$0], t__b=[$1], t__c=[$2])
+          HiveFilter(condition=[AND(>($0, 10), IS NOT NULL($1))])
             HiveTableScan(table=[[default, target]], table:alias=[target])
-        HiveProject(a=[$0], b=[$1], c=[$2])
-          HiveFilter(condition=[>($0, 20)])
+        HiveProject(a=[$0], b=[$1])
+          HiveFilter(condition=[AND(>($0, 10), IS NOT NULL($1))])
             HiveTableScan(table=[[default, source]], table:alias=[s])
-  HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], t__a=[$5], t__b=[$6], t__c=[$7])
-    HiveSemiJoin(condition=[=($2, $10)], joinType=[semi])
-      HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], t__a=[$5], t__b=[$6], t__c=[$7], a=[$8], b=[$9])
-        HiveFilter(condition=[OR(IS NULL(OR(AND(=($5, $8), =($6, $9), IS NULL($5)), >($5, 10), AND(IS NULL($5), IS NULL($6)))), AND(OR(<>($5, $8), <>($6, $9), IS NOT NULL($5)), <=($5, 10), OR(IS NOT NULL($5), IS NOT NULL($6))))])
-          HiveJoin(condition=[AND(=($5, $8), =($6, $9))], joinType=[left], algorithm=[none], cost=[not available])
-            HiveProject(t__partition__spec__id=[$3], t__partition__hash=[$4], t__file__path=[$5], t__row__position=[$6], t__partition__projection=[$7], t__a=[$0], t__b=[$1], t__c=[$2])
-              HiveFilter(condition=[IS NOT NULL($5)])
-                HiveTableScan(table=[[default, target]], table:alias=[target])
-            HiveProject(a=[$0], b=[$1])
-              HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
-                HiveTableScan(table=[[default, source]], table:alias=[s])
-      HiveProject(t__file__path=[$0])
-        HiveFilter(condition=[=($1, 1)])
-          HiveProject(t__file__path=[$0], row_number_window_0=[row_number() OVER (PARTITION BY $0 ORDER BY $0 NULLS FIRST RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)])
-            HiveJoin(condition=[AND(=($1, $3), =($2, $4))], joinType=[left], algorithm=[none], cost=[not available])
-              HiveProject(t__file__path=[$5], t__a=[$0], t__b=[$1])
-                HiveFilter(condition=[AND(>($0, 10), IS NOT NULL($5))])
+    HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], a=[$7], b=[$8], c=[$9])
+      HiveFilter(condition=[AND(IS NULL($5), IS NULL($6))])
+        HiveJoin(condition=[AND(=($5, $7), =($6, $8))], joinType=[right], algorithm=[none], cost=[not available])
+          HiveProject(t__partition__spec__id=[$3], t__partition__hash=[$4], t__file__path=[$5], t__row__position=[$6], t__partition__projection=[$7], t__a=[$0], t__b=[$1])
+            HiveFilter(condition=[AND(>($0, 20), IS NOT NULL($1))])
+              HiveTableScan(table=[[default, target]], table:alias=[target])
+          HiveProject(a=[$0], b=[$1], c=[$2])
+            HiveFilter(condition=[>($0, 20)])
+              HiveTableScan(table=[[default, source]], table:alias=[s])
+    HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], t__a=[$5], t__b=[$6], t__c=[$7])
+      HiveSemiJoin(condition=[=($2, $10)], joinType=[semi])
+        HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], t__a=[$5], t__b=[$6], t__c=[$7], a=[$8], b=[$9])
+          HiveFilter(condition=[OR(IS NULL(OR(AND(=($5, $8), =($6, $9), IS NULL($5)), >($5, 10), AND(IS NULL($5), IS NULL($6)))), AND(OR(<>($5, $8), <>($6, $9), IS NOT NULL($5)), <=($5, 10), OR(IS NOT NULL($5), IS NOT NULL($6))))])
+            HiveJoin(condition=[AND(=($5, $8), =($6, $9))], joinType=[left], algorithm=[none], cost=[not available])
+              HiveProject(t__partition__spec__id=[$3], t__partition__hash=[$4], t__file__path=[$5], t__row__position=[$6], t__partition__projection=[$7], t__a=[$0], t__b=[$1], t__c=[$2])
+                HiveFilter(condition=[IS NOT NULL($5)])
                   HiveTableScan(table=[[default, target]], table:alias=[target])
               HiveProject(a=[$0], b=[$1])
-                HiveFilter(condition=[AND(>($0, 10), IS NOT NULL($1))])
+                HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
                   HiveTableScan(table=[[default, source]], table:alias=[s])
-  HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], _o__c3=[-1:BIGINT], t__partition__projection=[$3], t__a=[$4], t__b=[$5], t__c=[$6])
-    HiveFilter(condition=[=($7, 1)])
-      HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__partition__projection=[$3], t__a=[$4], t__b=[$5], t__c=[$6], row_number_window_0=[row_number() OVER (PARTITION BY $2 ORDER BY $2 NULLS FIRST RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)])
-        HiveJoin(condition=[AND(=($4, $7), =($5, $8))], joinType=[left], algorithm=[none], cost=[not available])
-          HiveProject(t__partition__spec__id=[$3], t__partition__hash=[$4], t__file__path=[$5], t__partition__projection=[$7], t__a=[$0], t__b=[$1], t__c=[$2])
-            HiveFilter(condition=[>($0, 10)])
-              HiveTableScan(table=[[default, target]], table:alias=[target])
-          HiveProject(a=[$0], b=[$1])
-            HiveFilter(condition=[AND(>($0, 10), IS NOT NULL($1))])
-              HiveTableScan(table=[[default, source]], table:alias=[s])
+        HiveProject(t__file__path=[$0])
+          HiveFilter(condition=[=($1, 1)])
+            HiveProject(t__file__path=[$0], row_number_window_0=[row_number() OVER (PARTITION BY $0 ORDER BY $0 NULLS FIRST RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)])
+              HiveJoin(condition=[AND(=($1, $3), =($2, $4))], joinType=[left], algorithm=[none], cost=[not available])
+                HiveProject(t__file__path=[$5], t__a=[$0], t__b=[$1])
+                  HiveFilter(condition=[AND(>($0, 10), IS NOT NULL($5))])
+                    HiveTableScan(table=[[default, target]], table:alias=[target])
+                HiveProject(a=[$0], b=[$1])
+                  HiveFilter(condition=[AND(>($0, 10), IS NOT NULL($1))])
+                    HiveTableScan(table=[[default, source]], table:alias=[s])
+    HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], _o__c3=[-1:BIGINT], t__partition__projection=[$3], t__a=[$4], t__b=[$5], t__c=[$6])
+      HiveFilter(condition=[=($7, 1)])
+        HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__partition__projection=[$3], t__a=[$4], t__b=[$5], t__c=[$6], row_number_window_0=[row_number() OVER (PARTITION BY $2 ORDER BY $2 NULLS FIRST RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)])
+          HiveJoin(condition=[AND(=($4, $7), =($5, $8))], joinType=[left], algorithm=[none], cost=[not available])
+            HiveProject(t__partition__spec__id=[$3], t__partition__hash=[$4], t__file__path=[$5], t__partition__projection=[$7], t__a=[$0], t__b=[$1], t__c=[$2])
+              HiveFilter(condition=[>($0, 10)])
+                HiveTableScan(table=[[default, target]], table:alias=[target])
+            HiveProject(a=[$0], b=[$1])
+              HiveFilter(condition=[AND(>($0, 10), IS NOT NULL($1))])
+                HiveTableScan(table=[[default, source]], table:alias=[s])
 
 PREHOOK: query: explain cbo
 merge into target as t using source as s on t.a = s.a and t.b = s.b
@@ -140,47 +141,48 @@ POSTHOOK: Input: default@source
 POSTHOOK: Input: default@target
 POSTHOOK: Output: default@target
 CBO PLAN:
-HiveUnion(all=[true])
-  HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], a=[$7], b=[$8], c=[$9])
-    HiveFilter(condition=[AND(IS NULL($5), IS NULL($6))])
-      HiveJoin(condition=[AND(=($5, $7), =($6, $8))], joinType=[right], algorithm=[none], cost=[not available])
-        HiveProject(t__partition__spec__id=[$3], t__partition__hash=[$4], t__file__path=[$5], t__row__position=[$6], t__partition__projection=[$7], t__a=[$0], t__b=[$1])
-          HiveFilter(condition=[AND(>($0, 20), IS NOT NULL($1))])
-            HiveTableScan(table=[[default, target]], table:alias=[target])
-        HiveProject(a=[$0], b=[$1], c=[$2])
-          HiveFilter(condition=[>($0, 20)])
-            HiveTableScan(table=[[default, source]], table:alias=[s])
-  HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], t__a=[$5], t__b=[$6], t__c=[$7])
-    HiveSemiJoin(condition=[=($2, $10)], joinType=[semi])
-      HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], t__a=[$5], t__b=[$6], t__c=[$7], a=[$8], b=[$9])
-        HiveFilter(condition=[OR(IS NULL(OR(IS NULL($5), AND(=($5, $8), =($6, $9), >($5, 10)), AND(IS NULL($5), IS NULL($6)))), AND(OR(<>($5, $8), <>($6, $9), <=($5, 10)), IS NOT NULL($5)))])
-          HiveJoin(condition=[AND(=($5, $8), =($6, $9))], joinType=[left], algorithm=[none], cost=[not available])
-            HiveProject(t__partition__spec__id=[$3], t__partition__hash=[$4], t__file__path=[$5], t__row__position=[$6], t__partition__projection=[$7], t__a=[$0], t__b=[$1], t__c=[$2])
-              HiveFilter(condition=[IS NOT NULL($5)])
-                HiveTableScan(table=[[default, target]], table:alias=[target])
-            HiveProject(a=[$0], b=[$1])
-              HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
-                HiveTableScan(table=[[default, source]], table:alias=[s])
-      HiveProject(t__file__path=[$0])
-        HiveFilter(condition=[=($1, 1)])
-          HiveProject(t__file__path=[$0], row_number_window_0=[row_number() OVER (PARTITION BY $0 ORDER BY $0 NULLS FIRST RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)])
-            HiveFilter(condition=[OR(IS NULL($1), AND(=($1, $3), =($2, $4), >($1, 10)))])
-              HiveJoin(condition=[AND(=($1, $3), =($2, $4))], joinType=[left], algorithm=[none], cost=[not available])
-                HiveProject(t__file__path=[$5], t__a=[$0], t__b=[$1])
-                  HiveFilter(condition=[IS NOT NULL($5)])
-                    HiveTableScan(table=[[default, target]], table:alias=[target])
-                HiveProject(a=[$0], b=[$1])
-                  HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
-                    HiveTableScan(table=[[default, source]], table:alias=[s])
-  HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], _o__c3=[-1:BIGINT], t__partition__projection=[$3], t__a=[$4], t__b=[$5], t__c=[$6])
-    HiveFilter(condition=[=($7, 1)])
-      HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__partition__projection=[$3], t__a=[$4], t__b=[$5], t__c=[$6], row_number_window_0=[row_number() OVER (PARTITION BY $2 ORDER BY $2 NULLS FIRST RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)])
-        HiveFilter(condition=[OR(IS NULL($4), AND(=($4, $7), =($5, $8), >($4, 10)))])
-          HiveJoin(condition=[AND(=($4, $7), =($5, $8))], joinType=[full], algorithm=[none], cost=[not available])
-            HiveProject(t__partition__spec__id=[$3], t__partition__hash=[$4], t__file__path=[$5], t__partition__projection=[$7], t__a=[$0], t__b=[$1], t__c=[$2])
+HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], t__a=[$5], t__b=[$6], t__c=[$7])
+  HiveUnion(all=[true])
+    HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], a=[$7], b=[$8], c=[$9])
+      HiveFilter(condition=[AND(IS NULL($5), IS NULL($6))])
+        HiveJoin(condition=[AND(=($5, $7), =($6, $8))], joinType=[right], algorithm=[none], cost=[not available])
+          HiveProject(t__partition__spec__id=[$3], t__partition__hash=[$4], t__file__path=[$5], t__row__position=[$6], t__partition__projection=[$7], t__a=[$0], t__b=[$1])
+            HiveFilter(condition=[AND(>($0, 20), IS NOT NULL($1))])
               HiveTableScan(table=[[default, target]], table:alias=[target])
-            HiveProject(a=[$0], b=[$1])
+          HiveProject(a=[$0], b=[$1], c=[$2])
+            HiveFilter(condition=[>($0, 20)])
               HiveTableScan(table=[[default, source]], table:alias=[s])
+    HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], t__a=[$5], t__b=[$6], t__c=[$7])
+      HiveSemiJoin(condition=[=($2, $10)], joinType=[semi])
+        HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], t__a=[$5], t__b=[$6], t__c=[$7], a=[$8], b=[$9])
+          HiveFilter(condition=[OR(IS NULL(OR(IS NULL($5), AND(=($5, $8), =($6, $9), >($5, 10)), AND(IS NULL($5), IS NULL($6)))), AND(OR(<>($5, $8), <>($6, $9), <=($5, 10)), IS NOT NULL($5)))])
+            HiveJoin(condition=[AND(=($5, $8), =($6, $9))], joinType=[left], algorithm=[none], cost=[not available])
+              HiveProject(t__partition__spec__id=[$3], t__partition__hash=[$4], t__file__path=[$5], t__row__position=[$6], t__partition__projection=[$7], t__a=[$0], t__b=[$1], t__c=[$2])
+                HiveFilter(condition=[IS NOT NULL($5)])
+                  HiveTableScan(table=[[default, target]], table:alias=[target])
+              HiveProject(a=[$0], b=[$1])
+                HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
+                  HiveTableScan(table=[[default, source]], table:alias=[s])
+        HiveProject(t__file__path=[$0])
+          HiveFilter(condition=[=($1, 1)])
+            HiveProject(t__file__path=[$0], row_number_window_0=[row_number() OVER (PARTITION BY $0 ORDER BY $0 NULLS FIRST RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)])
+              HiveFilter(condition=[OR(IS NULL($1), AND(=($1, $3), =($2, $4), >($1, 10)))])
+                HiveJoin(condition=[AND(=($1, $3), =($2, $4))], joinType=[left], algorithm=[none], cost=[not available])
+                  HiveProject(t__file__path=[$5], t__a=[$0], t__b=[$1])
+                    HiveFilter(condition=[IS NOT NULL($5)])
+                      HiveTableScan(table=[[default, target]], table:alias=[target])
+                  HiveProject(a=[$0], b=[$1])
+                    HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
+                      HiveTableScan(table=[[default, source]], table:alias=[s])
+    HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], _o__c3=[-1:BIGINT], t__partition__projection=[$3], t__a=[$4], t__b=[$5], t__c=[$6])
+      HiveFilter(condition=[=($7, 1)])
+        HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__partition__projection=[$3], t__a=[$4], t__b=[$5], t__c=[$6], row_number_window_0=[row_number() OVER (PARTITION BY $2 ORDER BY $2 NULLS FIRST RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)])
+          HiveFilter(condition=[OR(IS NULL($4), AND(=($4, $7), =($5, $8), >($4, 10)))])
+            HiveJoin(condition=[AND(=($4, $7), =($5, $8))], joinType=[full], algorithm=[none], cost=[not available])
+              HiveProject(t__partition__spec__id=[$3], t__partition__hash=[$4], t__file__path=[$5], t__partition__projection=[$7], t__a=[$0], t__b=[$1], t__c=[$2])
+                HiveTableScan(table=[[default, target]], table:alias=[target])
+              HiveProject(a=[$0], b=[$1])
+                HiveTableScan(table=[[default, source]], table:alias=[s])
 
 PREHOOK: query: explain cbo
 merge into target as t using source as s on t.a = s.a and t.b = s.b
@@ -201,46 +203,47 @@ POSTHOOK: Input: default@source
 POSTHOOK: Input: default@target
 POSTHOOK: Output: default@target
 CBO PLAN:
-HiveUnion(all=[true])
-  HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], a=[null:INTEGER], b=[$8], c=[$9])
-    HiveFilter(condition=[AND(IS NULL($5), IS NULL($6), IS NULL($7))])
-      HiveJoin(condition=[AND(=($5, $7), =($6, $8))], joinType=[full], algorithm=[none], cost=[not available])
-        HiveProject(t__partition__spec__id=[$3], t__partition__hash=[$4], t__file__path=[$5], t__row__position=[$6], t__partition__projection=[$7], t__a=[$0], t__b=[$1])
-          HiveTableScan(table=[[default, target]], table:alias=[target])
-        HiveProject(a=[$0], b=[$1], c=[$2])
-          HiveTableScan(table=[[default, source]], table:alias=[s])
-  HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], t__a=[$5], t__b=[$6], t__c=[$7])
-    HiveSemiJoin(condition=[=($2, $10)], joinType=[semi])
-      HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], t__a=[$5], t__b=[$6], t__c=[$7], a=[$8], b=[$9])
-        HiveFilter(condition=[OR(IS NULL(OR(AND(=($5, $8), =($6, $9), >($5, 10)), >($5, 20), AND(IS NULL($5), IS NULL($6)))), AND(OR(<>($5, $8), <>($6, $9), <=($5, 10)), <=($5, 20), OR(IS NOT NULL($5), IS NOT NULL($6))))])
-          HiveJoin(condition=[AND(=($5, $8), =($6, $9))], joinType=[left], algorithm=[none], cost=[not available])
-            HiveProject(t__partition__spec__id=[$3], t__partition__hash=[$4], t__file__path=[$5], t__row__position=[$6], t__partition__projection=[$7], t__a=[$0], t__b=[$1], t__c=[$2])
-              HiveFilter(condition=[IS NOT NULL($5)])
+HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], t__a=[$5], t__b=[$6], t__c=[$7])
+  HiveUnion(all=[true])
+    HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], a=[null:INTEGER], b=[$8], c=[$9])
+      HiveFilter(condition=[AND(IS NULL($5), IS NULL($6), IS NULL($7))])
+        HiveJoin(condition=[AND(=($5, $7), =($6, $8))], joinType=[full], algorithm=[none], cost=[not available])
+          HiveProject(t__partition__spec__id=[$3], t__partition__hash=[$4], t__file__path=[$5], t__row__position=[$6], t__partition__projection=[$7], t__a=[$0], t__b=[$1])
+            HiveTableScan(table=[[default, target]], table:alias=[target])
+          HiveProject(a=[$0], b=[$1], c=[$2])
+            HiveTableScan(table=[[default, source]], table:alias=[s])
+    HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], t__a=[$5], t__b=[$6], t__c=[$7])
+      HiveSemiJoin(condition=[=($2, $10)], joinType=[semi])
+        HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], t__a=[$5], t__b=[$6], t__c=[$7], a=[$8], b=[$9])
+          HiveFilter(condition=[OR(IS NULL(OR(AND(=($5, $8), =($6, $9), >($5, 10)), >($5, 20), AND(IS NULL($5), IS NULL($6)))), AND(OR(<>($5, $8), <>($6, $9), <=($5, 10)), <=($5, 20), OR(IS NOT NULL($5), IS NOT NULL($6))))])
+            HiveJoin(condition=[AND(=($5, $8), =($6, $9))], joinType=[left], algorithm=[none], cost=[not available])
+              HiveProject(t__partition__spec__id=[$3], t__partition__hash=[$4], t__file__path=[$5], t__row__position=[$6], t__partition__projection=[$7], t__a=[$0], t__b=[$1], t__c=[$2])
+                HiveFilter(condition=[IS NOT NULL($5)])
+                  HiveTableScan(table=[[default, target]], table:alias=[target])
+              HiveProject(a=[$0], b=[$1])
+                HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
+                  HiveTableScan(table=[[default, source]], table:alias=[s])
+        HiveProject(t__file__path=[$0])
+          HiveFilter(condition=[=($1, 1)])
+            HiveProject(t__file__path=[$0], row_number_window_0=[row_number() OVER (PARTITION BY $0 ORDER BY $0 NULLS FIRST RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)])
+              HiveFilter(condition=[OR(>($1, 20), AND(=($1, $3), =($2, $4), >($1, 10)))])
+                HiveJoin(condition=[AND(=($1, $3), =($2, $4))], joinType=[left], algorithm=[none], cost=[not available])
+                  HiveProject(t__file__path=[$5], t__a=[$0], t__b=[$1])
+                    HiveFilter(condition=[IS NOT NULL($5)])
+                      HiveTableScan(table=[[default, target]], table:alias=[target])
+                  HiveProject(a=[$0], b=[$1])
+                    HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
+                      HiveTableScan(table=[[default, source]], table:alias=[s])
+    HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], _o__c3=[-1:BIGINT], t__partition__projection=[$3], t__a=[$4], t__b=[$5], t__c=[$6])
+      HiveFilter(condition=[=($7, 1)])
+        HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__partition__projection=[$3], t__a=[$4], t__b=[$5], t__c=[$6], row_number_window_0=[row_number() OVER (PARTITION BY $2 ORDER BY $2 NULLS FIRST RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)])
+          HiveFilter(condition=[OR(>($4, 20), AND(=($4, $7), =($5, $8), >($4, 10)))])
+            HiveJoin(condition=[AND(=($4, $7), =($5, $8))], joinType=[left], algorithm=[none], cost=[not available])
+              HiveProject(t__partition__spec__id=[$3], t__partition__hash=[$4], t__file__path=[$5], t__partition__projection=[$7], t__a=[$0], t__b=[$1], t__c=[$2])
                 HiveTableScan(table=[[default, target]], table:alias=[target])
-            HiveProject(a=[$0], b=[$1])
-              HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
-                HiveTableScan(table=[[default, source]], table:alias=[s])
-      HiveProject(t__file__path=[$0])
-        HiveFilter(condition=[=($1, 1)])
-          HiveProject(t__file__path=[$0], row_number_window_0=[row_number() OVER (PARTITION BY $0 ORDER BY $0 NULLS FIRST RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)])
-            HiveFilter(condition=[OR(>($1, 20), AND(=($1, $3), =($2, $4), >($1, 10)))])
-              HiveJoin(condition=[AND(=($1, $3), =($2, $4))], joinType=[left], algorithm=[none], cost=[not available])
-                HiveProject(t__file__path=[$5], t__a=[$0], t__b=[$1])
-                  HiveFilter(condition=[IS NOT NULL($5)])
-                    HiveTableScan(table=[[default, target]], table:alias=[target])
-                HiveProject(a=[$0], b=[$1])
-                  HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
-                    HiveTableScan(table=[[default, source]], table:alias=[s])
-  HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], _o__c3=[-1:BIGINT], t__partition__projection=[$3], t__a=[$4], t__b=[$5], t__c=[$6])
-    HiveFilter(condition=[=($7, 1)])
-      HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__partition__projection=[$3], t__a=[$4], t__b=[$5], t__c=[$6], row_number_window_0=[row_number() OVER (PARTITION BY $2 ORDER BY $2 NULLS FIRST RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)])
-        HiveFilter(condition=[OR(>($4, 20), AND(=($4, $7), =($5, $8), >($4, 10)))])
-          HiveJoin(condition=[AND(=($4, $7), =($5, $8))], joinType=[left], algorithm=[none], cost=[not available])
-            HiveProject(t__partition__spec__id=[$3], t__partition__hash=[$4], t__file__path=[$5], t__partition__projection=[$7], t__a=[$0], t__b=[$1], t__c=[$2])
-              HiveTableScan(table=[[default, target]], table:alias=[target])
-            HiveProject(a=[$0], b=[$1])
-              HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
-                HiveTableScan(table=[[default, source]], table:alias=[s])
+              HiveProject(a=[$0], b=[$1])
+                HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
+                  HiveTableScan(table=[[default, source]], table:alias=[s])
 
 PREHOOK: query: explain cbo
 merge into target as t using source as s on t.a = s.a and t.b = s.b
@@ -261,46 +264,47 @@ POSTHOOK: Input: default@source
 POSTHOOK: Input: default@target
 POSTHOOK: Output: default@target
 CBO PLAN:
-HiveUnion(all=[true])
-  HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], a=[$7], b=[$8], c=[$9])
-    HiveFilter(condition=[AND(IS NULL($5), IS NULL($6))])
-      HiveJoin(condition=[AND(=($5, $7), =($6, $8))], joinType=[right], algorithm=[none], cost=[not available])
-        HiveProject(t__partition__spec__id=[$3], t__partition__hash=[$4], t__file__path=[$5], t__row__position=[$6], t__partition__projection=[$7], t__a=[$0], t__b=[$1])
-          HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
-            HiveTableScan(table=[[default, target]], table:alias=[target])
-        HiveProject(a=[$0], b=[$1], c=[$2])
-          HiveFilter(condition=[IS NOT NULL($0)])
-            HiveTableScan(table=[[default, source]], table:alias=[s])
-  HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], t__a=[$5], t__b=[$6], t__c=[$7])
-    HiveSemiJoin(condition=[=($2, $10)], joinType=[semi])
-      HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], t__a=[$5], t__b=[$6], t__c=[$7], a=[$8], b=[$9])
-        HiveFilter(condition=[OR(IS NULL(OR(AND(=($5, $8), =($6, $9), >($5, 10)), >($5, 20), AND(IS NULL($5), IS NULL($6)))), AND(OR(<>($5, $8), <>($6, $9), <=($5, 10)), <=($5, 20), OR(IS NOT NULL($5), IS NOT NULL($6))))])
-          HiveJoin(condition=[AND(=($5, $8), =($6, $9))], joinType=[left], algorithm=[none], cost=[not available])
-            HiveProject(t__partition__spec__id=[$3], t__partition__hash=[$4], t__file__path=[$5], t__row__position=[$6], t__partition__projection=[$7], t__a=[$0], t__b=[$1], t__c=[$2])
-              HiveFilter(condition=[IS NOT NULL($5)])
-                HiveTableScan(table=[[default, target]], table:alias=[target])
-            HiveProject(a=[$0], b=[$1])
-              HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
-                HiveTableScan(table=[[default, source]], table:alias=[s])
-      HiveProject(t__file__path=[$0])
-        HiveFilter(condition=[=($1, 1)])
-          HiveProject(t__file__path=[$0], row_number_window_0=[row_number() OVER (PARTITION BY $0 ORDER BY $0 NULLS FIRST RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)])
-            HiveFilter(condition=[OR(>($1, 20), AND(=($1, $3), =($2, $4), >($1, 10)))])
-              HiveJoin(condition=[AND(=($1, $3), =($2, $4))], joinType=[left], algorithm=[none], cost=[not available])
-                HiveProject(t__file__path=[$5], t__a=[$0], t__b=[$1])
-                  HiveFilter(condition=[IS NOT NULL($5)])
-                    HiveTableScan(table=[[default, target]], table:alias=[target])
-                HiveProject(a=[$0], b=[$1])
-                  HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
-                    HiveTableScan(table=[[default, source]], table:alias=[s])
-  HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], _o__c3=[-1:BIGINT], t__partition__projection=[$3], t__a=[$4], t__b=[$5], t__c=[$6])
-    HiveFilter(condition=[=($7, 1)])
-      HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__partition__projection=[$3], t__a=[$4], t__b=[$5], t__c=[$6], row_number_window_0=[row_number() OVER (PARTITION BY $2 ORDER BY $2 NULLS FIRST RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)])
-        HiveFilter(condition=[OR(>($4, 20), AND(=($4, $7), =($5, $8), >($4, 10)))])
-          HiveJoin(condition=[AND(=($4, $7), =($5, $8))], joinType=[left], algorithm=[none], cost=[not available])
-            HiveProject(t__partition__spec__id=[$3], t__partition__hash=[$4], t__file__path=[$5], t__partition__projection=[$7], t__a=[$0], t__b=[$1], t__c=[$2])
+HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], t__a=[$5], t__b=[$6], t__c=[$7])
+  HiveUnion(all=[true])
+    HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], a=[$7], b=[$8], c=[$9])
+      HiveFilter(condition=[AND(IS NULL($5), IS NULL($6))])
+        HiveJoin(condition=[AND(=($5, $7), =($6, $8))], joinType=[right], algorithm=[none], cost=[not available])
+          HiveProject(t__partition__spec__id=[$3], t__partition__hash=[$4], t__file__path=[$5], t__row__position=[$6], t__partition__projection=[$7], t__a=[$0], t__b=[$1])
+            HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
               HiveTableScan(table=[[default, target]], table:alias=[target])
-            HiveProject(a=[$0], b=[$1])
-              HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
-                HiveTableScan(table=[[default, source]], table:alias=[s])
+          HiveProject(a=[$0], b=[$1], c=[$2])
+            HiveFilter(condition=[IS NOT NULL($0)])
+              HiveTableScan(table=[[default, source]], table:alias=[s])
+    HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], t__a=[$5], t__b=[$6], t__c=[$7])
+      HiveSemiJoin(condition=[=($2, $10)], joinType=[semi])
+        HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__row__position=[$3], t__partition__projection=[$4], t__a=[$5], t__b=[$6], t__c=[$7], a=[$8], b=[$9])
+          HiveFilter(condition=[OR(IS NULL(OR(AND(=($5, $8), =($6, $9), >($5, 10)), >($5, 20), AND(IS NULL($5), IS NULL($6)))), AND(OR(<>($5, $8), <>($6, $9), <=($5, 10)), <=($5, 20), OR(IS NOT NULL($5), IS NOT NULL($6))))])
+            HiveJoin(condition=[AND(=($5, $8), =($6, $9))], joinType=[left], algorithm=[none], cost=[not available])
+              HiveProject(t__partition__spec__id=[$3], t__partition__hash=[$4], t__file__path=[$5], t__row__position=[$6], t__partition__projection=[$7], t__a=[$0], t__b=[$1], t__c=[$2])
+                HiveFilter(condition=[IS NOT NULL($5)])
+                  HiveTableScan(table=[[default, target]], table:alias=[target])
+              HiveProject(a=[$0], b=[$1])
+                HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
+                  HiveTableScan(table=[[default, source]], table:alias=[s])
+        HiveProject(t__file__path=[$0])
+          HiveFilter(condition=[=($1, 1)])
+            HiveProject(t__file__path=[$0], row_number_window_0=[row_number() OVER (PARTITION BY $0 ORDER BY $0 NULLS FIRST RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)])
+              HiveFilter(condition=[OR(>($1, 20), AND(=($1, $3), =($2, $4), >($1, 10)))])
+                HiveJoin(condition=[AND(=($1, $3), =($2, $4))], joinType=[left], algorithm=[none], cost=[not available])
+                  HiveProject(t__file__path=[$5], t__a=[$0], t__b=[$1])
+                    HiveFilter(condition=[IS NOT NULL($5)])
+                      HiveTableScan(table=[[default, target]], table:alias=[target])
+                  HiveProject(a=[$0], b=[$1])
+                    HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
+                      HiveTableScan(table=[[default, source]], table:alias=[s])
+    HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], _o__c3=[-1:BIGINT], t__partition__projection=[$3], t__a=[$4], t__b=[$5], t__c=[$6])
+      HiveFilter(condition=[=($7, 1)])
+        HiveProject(t__partition__spec__id=[$0], t__partition__hash=[$1], t__file__path=[$2], t__partition__projection=[$3], t__a=[$4], t__b=[$5], t__c=[$6], row_number_window_0=[row_number() OVER (PARTITION BY $2 ORDER BY $2 NULLS FIRST RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)])
+          HiveFilter(condition=[OR(>($4, 20), AND(=($4, $7), =($5, $8), >($4, 10)))])
+            HiveJoin(condition=[AND(=($4, $7), =($5, $8))], joinType=[left], algorithm=[none], cost=[not available])
+              HiveProject(t__partition__spec__id=[$3], t__partition__hash=[$4], t__file__path=[$5], t__partition__projection=[$7], t__a=[$0], t__b=[$1], t__c=[$2])
+                HiveTableScan(table=[[default, target]], table:alias=[target])
+              HiveProject(a=[$0], b=[$1])
+                HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
+                  HiveTableScan(table=[[default, source]], table:alias=[s])
 
diff --git a/iceberg/iceberg-handler/src/test/results/positive/mv_iceberg_orc.q.out b/iceberg/iceberg-handler/src/test/results/positive/mv_iceberg_orc.q.out
index 107bdb412d4..71b9c520d6c 100644
--- a/iceberg/iceberg-handler/src/test/results/positive/mv_iceberg_orc.q.out
+++ b/iceberg/iceberg-handler/src/test/results/positive/mv_iceberg_orc.q.out
@@ -82,7 +82,8 @@ POSTHOOK: Input: default@tbl_ice
 POSTHOOK: Input: default@tbl_ice_v2
 POSTHOOK: Output: hdfs://### HDFS PATH ###
 CBO PLAN:
-HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
+HiveProject(tbl_ice.b=[$0], tbl_ice.c=[$1], tbl_ice_v2.e=[$2])
+  HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
 
 PREHOOK: query: insert into tbl_ice values (1, 'one', 50), (2, 'two', 51), (3, 'three', 52), (4, 'four', 53), (5, 'five', 54)
 PREHOOK: type: QUERY
@@ -105,7 +106,7 @@ POSTHOOK: Input: default@tbl_ice
 POSTHOOK: Input: default@tbl_ice_v2
 POSTHOOK: Output: hdfs://### HDFS PATH ###
 CBO PLAN:
-HiveProject(b=[$1], c=[$2], e=[$4])
+HiveProject(tbl_ice.b=[$1], tbl_ice.c=[$2], tbl_ice_v2.e=[$4])
   HiveJoin(condition=[=($0, $3)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(a=[$0], b=[$1], c=[$2])
       HiveFilter(condition=[AND(>($2, 52), IS NOT NULL($0))])
@@ -127,7 +128,7 @@ POSTHOOK: Input: default@tbl_ice
 POSTHOOK: Input: default@tbl_ice_v2
 POSTHOOK: Output: default@mat1
 CBO PLAN:
-HiveProject(b=[$1], c=[$2], e=[$4])
+HiveProject(tbl_ice.b=[$1], tbl_ice.c=[$2], tbl_ice_v2.e=[$4])
   HiveJoin(condition=[=($0, $3)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(a=[$0], b=[$1], c=[$2])
       HiveFilter(condition=[AND(>($2, 52), IS NOT NULL($0))])
@@ -174,5 +175,6 @@ POSTHOOK: Input: default@tbl_ice
 POSTHOOK: Input: default@tbl_ice_v2
 POSTHOOK: Output: hdfs://### HDFS PATH ###
 CBO PLAN:
-HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
+HiveProject(tbl_ice.b=[$0], tbl_ice.c=[$1], tbl_ice_v2.e=[$2])
+  HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
 
diff --git a/iceberg/iceberg-handler/src/test/results/positive/mv_iceberg_orc2.q.out b/iceberg/iceberg-handler/src/test/results/positive/mv_iceberg_orc2.q.out
index 4e408422859..e7ea0e62530 100644
--- a/iceberg/iceberg-handler/src/test/results/positive/mv_iceberg_orc2.q.out
+++ b/iceberg/iceberg-handler/src/test/results/positive/mv_iceberg_orc2.q.out
@@ -197,7 +197,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@tbl_ice
 POSTHOOK: Output: hdfs://### HDFS PATH ###
 CBO PLAN:
-HiveProject(b=[$1], c=[$2])
+HiveProject(tbl_ice.b=[$1], tbl_ice.c=[$2])
   HiveFilter(condition=[>($2, 52)])
     HiveTableScan(table=[[default, tbl_ice]], table:alias=[tbl_ice])
 
@@ -222,7 +222,8 @@ POSTHOOK: Input: default@mat1
 POSTHOOK: Input: default@tbl_ice
 POSTHOOK: Output: hdfs://### HDFS PATH ###
 CBO PLAN:
-HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
+HiveProject(tbl_ice.b=[$0], tbl_ice.c=[$1])
+  HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
 
 PREHOOK: query: insert into tbl_ice values (10, 'ten', 60)
 PREHOOK: type: QUERY
@@ -243,7 +244,7 @@ POSTHOOK: type: ALTER_MATERIALIZED_VIEW_REBUILD
 POSTHOOK: Input: default@tbl_ice
 POSTHOOK: Output: default@mat1
 CBO PLAN:
-HiveProject(b=[$1], c=[$2])
+HiveProject(tbl_ice.b=[$1], tbl_ice.c=[$2])
   HiveFilter(condition=[>($2, 52)])
     HiveTableScan(table=[[default, tbl_ice]], table:alias=[tbl_ice], fromVersion=[#Masked#])
 
diff --git a/iceberg/iceberg-handler/src/test/results/positive/mv_iceberg_orc4.q.out b/iceberg/iceberg-handler/src/test/results/positive/mv_iceberg_orc4.q.out
index 445cf331b29..f6adb53ea76 100644
--- a/iceberg/iceberg-handler/src/test/results/positive/mv_iceberg_orc4.q.out
+++ b/iceberg/iceberg-handler/src/test/results/positive/mv_iceberg_orc4.q.out
@@ -92,20 +92,21 @@ POSTHOOK: Input: default@tbl_ice
 POSTHOOK: Input: default@tbl_ice_v2
 POSTHOOK: Output: default@mat1
 CBO PLAN:
-HiveAggregate(group=[{0, 1}], agg#0=[sum($2)])
-  HiveProject(b=[$0], c=[$1], $f2=[$2])
-    HiveUnion(all=[true])
-      HiveProject(b=[$0], c=[$1], $f2=[$2])
-        HiveAggregate(group=[{1, 2}], agg#0=[sum($4)])
-          HiveJoin(condition=[=($0, $3)], joinType=[inner], algorithm=[none], cost=[not available])
-            HiveProject(a=[$0], b=[$1], c=[$2])
-              HiveFilter(condition=[AND(>($2, 52), IS NOT NULL($0))])
-                HiveTableScan(table=[[default, tbl_ice]], table:alias=[tbl_ice], fromVersion=[#Masked#])
-            HiveProject(d=[$0], f=[$2])
-              HiveFilter(condition=[IS NOT NULL($0)])
-                HiveTableScan(table=[[default, tbl_ice_v2]], table:alias=[tbl_ice_v2], fromVersion=[#Masked#])
-      HiveProject(b=[$0], c=[$1], _c2=[$2])
-        HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
+HiveProject(tbl_ice.b=[$0], tbl_ice.c=[$1], _c2=[$2])
+  HiveAggregate(group=[{0, 1}], agg#0=[sum($2)])
+    HiveProject(b=[$0], c=[$1], $f2=[$2])
+      HiveUnion(all=[true])
+        HiveProject(b=[$0], c=[$1], $f2=[$2])
+          HiveAggregate(group=[{1, 2}], agg#0=[sum($4)])
+            HiveJoin(condition=[=($0, $3)], joinType=[inner], algorithm=[none], cost=[not available])
+              HiveProject(a=[$0], b=[$1], c=[$2])
+                HiveFilter(condition=[AND(>($2, 52), IS NOT NULL($0))])
+                  HiveTableScan(table=[[default, tbl_ice]], table:alias=[tbl_ice], fromVersion=[#Masked#])
+              HiveProject(d=[$0], f=[$2])
+                HiveFilter(condition=[IS NOT NULL($0)])
+                  HiveTableScan(table=[[default, tbl_ice_v2]], table:alias=[tbl_ice_v2], fromVersion=[#Masked#])
+        HiveProject(b=[$0], c=[$1], _c2=[$2])
+          HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
 
 PREHOOK: query: explain
 alter materialized view mat1 rebuild
@@ -352,7 +353,7 @@ POSTHOOK: Input: default@tbl_ice_v2
 POSTHOOK: Output: default@mat1
 POSTHOOK: Output: default@mat1
 CBO PLAN:
-HiveProject($f0=[$4], $f1=[$5], $f2=[CASE(IS NULL($2), $6, IS NULL($6), $2, +($6, $2))])
+HiveProject(tbl_ice.b=[$4], tbl_ice.c=[$5], _c2=[CASE(IS NULL($2), $6, IS NULL($6), $2, +($6, $2))])
   HiveFilter(condition=[OR($3, IS NULL($3))])
     HiveJoin(condition=[AND(IS NOT DISTINCT FROM($0, $4), IS NOT DISTINCT FROM($1, $5))], joinType=[right], algorithm=[BucketJoin], cost=[not available])
       HiveProject(b=[$0], c=[$1], _c2=[$2], $f3=[true])
diff --git a/iceberg/iceberg-handler/src/test/results/positive/mv_iceberg_orc5.q.out b/iceberg/iceberg-handler/src/test/results/positive/mv_iceberg_orc5.q.out
index 3e67b488b25..7fbe5317778 100644
--- a/iceberg/iceberg-handler/src/test/results/positive/mv_iceberg_orc5.q.out
+++ b/iceberg/iceberg-handler/src/test/results/positive/mv_iceberg_orc5.q.out
@@ -96,7 +96,7 @@ POSTHOOK: Input: default@tbl_ice_v2
 POSTHOOK: Output: default@mat2
 POSTHOOK: Output: default@mat2
 CBO PLAN:
-HiveProject(b=[$5], c=[$6], _o__c2=[CASE(IS NULL($2), $7, IS NULL($7), $2, +($7, $2))], _o__c3=[CASE(IS NULL($3), $8, IS NULL($8), $3, +($8, $3))], _o__c4=[/(CAST(CASE(IS NULL($2), $7, IS NULL($7), $2, +($7, $2))):DOUBLE, CASE(IS NULL($3), $8, IS NULL($8), $3, +($8, $3)))])
+HiveProject(tbl_ice.b=[$5], tbl_ice.c=[$6], _c2=[CASE(IS NULL($2), $7, IS NULL($7), $2, +($7, $2))], _c3=[CASE(IS NULL($3), $8, IS NULL($8), $3, +($8, $3))], _c4=[/(CAST(CASE(IS NULL($2), $7, IS NULL($7), $2, +($7, $2))):DOUBLE, CASE(IS NULL($3), $8, IS NULL($8), $3, +($8, $3)))])
   HiveFilter(condition=[OR($4, IS NULL($4))])
     HiveJoin(condition=[AND(IS NOT DISTINCT FROM($0, $5), IS NOT DISTINCT FROM($1, $6))], joinType=[right], algorithm=[BucketJoin], cost=[not available])
       HiveProject(b=[$0], c=[$1], _c2=[$2], _c3=[$3], $f4=[true])
diff --git a/iceberg/iceberg-handler/src/test/results/positive/mv_iceberg_orc6.q.out b/iceberg/iceberg-handler/src/test/results/positive/mv_iceberg_orc6.q.out
index 198cc88f391..35904d2a958 100644
--- a/iceberg/iceberg-handler/src/test/results/positive/mv_iceberg_orc6.q.out
+++ b/iceberg/iceberg-handler/src/test/results/positive/mv_iceberg_orc6.q.out
@@ -80,14 +80,15 @@ POSTHOOK: Input: default@tbl_ice
 POSTHOOK: Input: default@tbl_ice_v2
 POSTHOOK: Output: default@mat1
 CBO PLAN:
-HiveAggregate(group=[{1, 2}], agg#0=[sum($4)])
-  HiveJoin(condition=[=($0, $3)], joinType=[inner], algorithm=[none], cost=[not available])
-    HiveProject(a=[$0], b=[$1], c=[$2])
-      HiveFilter(condition=[AND(>($2, 52), IS NOT NULL($0))])
-        HiveTableScan(table=[[default, tbl_ice]], table:alias=[tbl_ice])
-    HiveProject(d=[$0], f=[$2])
-      HiveFilter(condition=[IS NOT NULL($0)])
-        HiveTableScan(table=[[default, tbl_ice_v2]], table:alias=[tbl_ice_v2])
+HiveProject(tbl_ice.b=[$0], tbl_ice.c=[$1], _c2=[$2])
+  HiveAggregate(group=[{1, 2}], agg#0=[sum($4)])
+    HiveJoin(condition=[=($0, $3)], joinType=[inner], algorithm=[none], cost=[not available])
+      HiveProject(a=[$0], b=[$1], c=[$2])
+        HiveFilter(condition=[AND(>($2, 52), IS NOT NULL($0))])
+          HiveTableScan(table=[[default, tbl_ice]], table:alias=[tbl_ice])
+      HiveProject(d=[$0], f=[$2])
+        HiveFilter(condition=[IS NOT NULL($0)])
+          HiveTableScan(table=[[default, tbl_ice_v2]], table:alias=[tbl_ice_v2])
 
 PREHOOK: query: alter materialized view mat1 rebuild
 PREHOOK: type: ALTER_MATERIALIZED_VIEW_REBUILD
diff --git a/iceberg/iceberg-handler/src/test/results/positive/mv_iceberg_orc7.q.out b/iceberg/iceberg-handler/src/test/results/positive/mv_iceberg_orc7.q.out
index f9dc58d11c7..94381e41535 100644
--- a/iceberg/iceberg-handler/src/test/results/positive/mv_iceberg_orc7.q.out
+++ b/iceberg/iceberg-handler/src/test/results/positive/mv_iceberg_orc7.q.out
@@ -74,7 +74,7 @@ POSTHOOK: Input: default@tbl_ice
 POSTHOOK: Output: default@mat1
 POSTHOOK: Output: default@mat1
 CBO PLAN:
-HiveProject($f0=[$3], $f1=[CASE(IS NULL($1), $4, IS NULL($4), $1, +($4, $1))])
+HiveProject(tbl_ice.a=[$3], _c1=[CASE(IS NULL($1), $4, IS NULL($4), $1, +($4, $1))])
   HiveFilter(condition=[OR($2, IS NULL($2))])
     HiveJoin(condition=[IS NOT DISTINCT FROM($0, $3)], joinType=[right], algorithm=[BucketJoin], cost=[not available])
       HiveProject(a=[$0], _c1=[$1], $f2=[true])
diff --git a/itests/hive-blobstore/src/test/results/clientpositive/insert_overwrite_directory.q.out b/itests/hive-blobstore/src/test/results/clientpositive/insert_overwrite_directory.q.out
index 09602918d02..bbefdf5c9c2 100644
--- a/itests/hive-blobstore/src/test/results/clientpositive/insert_overwrite_directory.q.out
+++ b/itests/hive-blobstore/src/test/results/clientpositive/insert_overwrite_directory.q.out
@@ -68,7 +68,7 @@ POSTHOOK: query: EXPLAIN EXTENDED INSERT OVERWRITE DIRECTORY '### test.blobstore
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@table1
 POSTHOOK: Output: ### test.blobstore.path ###/table1.dir
-OPTIMIZED SQL: SELECT `id`, `key`
+OPTIMIZED SQL: SELECT `id` AS `table1.id`, `key` AS `table1.key`
 FROM `default`.`table1`
 STAGE DEPENDENCIES:
   Stage-1 is a root stage
diff --git a/itests/hive-blobstore/src/test/results/clientpositive/write_final_output_blobstore.q.out b/itests/hive-blobstore/src/test/results/clientpositive/write_final_output_blobstore.q.out
index 645abc27e21..d5eb20ad900 100644
--- a/itests/hive-blobstore/src/test/results/clientpositive/write_final_output_blobstore.q.out
+++ b/itests/hive-blobstore/src/test/results/clientpositive/write_final_output_blobstore.q.out
@@ -36,7 +36,7 @@ POSTHOOK: query: EXPLAIN EXTENDED FROM hdfs_table INSERT OVERWRITE TABLE blobsto
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@hdfs_table
 POSTHOOK: Output: default@blobstore_table
-OPTIMIZED SQL: SELECT `key`
+OPTIMIZED SQL: SELECT `key` AS `hdfs_table.key`
 FROM `default`.`hdfs_table`
 GROUP BY `key`
 ORDER BY `key`
@@ -292,7 +292,7 @@ POSTHOOK: query: EXPLAIN EXTENDED FROM hdfs_table INSERT OVERWRITE TABLE blobsto
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@hdfs_table
 POSTHOOK: Output: default@blobstore_table
-OPTIMIZED SQL: SELECT `key`
+OPTIMIZED SQL: SELECT `key` AS `hdfs_table.key`
 FROM `default`.`hdfs_table`
 GROUP BY `key`
 ORDER BY `key`
diff --git a/itests/hive-unit/src/test/java/org/apache/hadoop/hive/ql/txn/compactor/TestMaterializedViewRebuild.java b/itests/hive-unit/src/test/java/org/apache/hadoop/hive/ql/txn/compactor/TestMaterializedViewRebuild.java
index 4453c321d22..265c82239c9 100644
--- a/itests/hive-unit/src/test/java/org/apache/hadoop/hive/ql/txn/compactor/TestMaterializedViewRebuild.java
+++ b/itests/hive-unit/src/test/java/org/apache/hadoop/hive/ql/txn/compactor/TestMaterializedViewRebuild.java
@@ -46,7 +46,7 @@ public class TestMaterializedViewRebuild extends CompactorOnTezTest {
 
   private static final List<String> FULL_REBUILD_PLAN = Arrays.asList(
           "CBO PLAN:",
-          "HiveProject(a=[$0], b=[$1], c=[$2])",
+          "HiveProject(t1.a=[$0], t1.b=[$1], t1.c=[$2])",
           "  HiveFilter(condition=[OR(IS NULL($0), >($0, 0))])",
           "    HiveTableScan(table=[[default, t1]], table:alias=[t1])",
           ""
@@ -54,7 +54,7 @@ public class TestMaterializedViewRebuild extends CompactorOnTezTest {
 
   private static final List<String> INCREMENTAL_REBUILD_PLAN = Arrays.asList(
           "CBO PLAN:",
-          "HiveProject(a=[$0], b=[$1], c=[$2])",
+          "HiveProject(t1.a=[$0], t1.b=[$1], t1.c=[$2])",
           "  HiveFilter(condition=[AND(>($5.writeid, 2), OR(IS NULL($0), >($0, 0)))])",
           "    HiveTableScan(table=[[default, t1]], table:alias=[t1])",
           ""
@@ -105,7 +105,8 @@ public void testWhenMajorCompactionThenIncrementalMVRebuildNotUsed() throws Exce
     assertResult(EXPECTED_RESULT, result);
 
     result = execSelectAndDumpData("explain cbo select a,b,c from " + TABLE1 + " where a > 0 or a is null", driver, "");
-    Assert.assertEquals(Arrays.asList("CBO PLAN:", "HiveTableScan(table=[[default, " + MV1 + "]], table:alias=[default." + MV1 + "])", ""), result);
+    Assert.assertEquals(Arrays.asList("CBO PLAN:", "HiveProject(a=[$0], b=[$1], c=[$2])",
+        "  HiveTableScan(table=[[default, " + MV1 + "]], table:alias=[default." + MV1 + "])", ""), result);
   }
 
   @Test
@@ -134,7 +135,9 @@ public void testSecondRebuildCanBeIncrementalAfterMajorCompaction() throws Excep
     assertResult(expected, result);
 
     result = execSelectAndDumpData("explain cbo select a,b,c from " + TABLE1 + " where a > 0 or a is null", driver, "");
-    Assert.assertEquals(Arrays.asList("CBO PLAN:", "HiveTableScan(table=[[default, " + MV1 + "]], table:alias=[default." + MV1 + "])", ""), result);
+    Assert.assertEquals(Arrays.asList("CBO PLAN:",
+        "HiveProject(a=[$0], b=[$1], c=[$2])",
+        "  HiveTableScan(table=[[default, " + MV1 + "]], table:alias=[default." + MV1 + "])", ""), result);
   }
 
   @Test
@@ -151,7 +154,8 @@ public void testWhenCleanUpOfMajorCompactionHasNotFinishedIncrementalMVRebuildNo
     assertResult(EXPECTED_RESULT, result);
 
     result = execSelectAndDumpData("explain cbo select a,b,c from " + TABLE1 + " where a > 0 or a is null", driver, "");
-    Assert.assertEquals(Arrays.asList("CBO PLAN:", "HiveTableScan(table=[[default, " + MV1 + "]], table:alias=[default." + MV1 + "])", ""), result);
+    Assert.assertEquals(Arrays.asList("CBO PLAN:", "HiveProject(a=[$0], b=[$1], c=[$2])",
+        "  HiveTableScan(table=[[default, " + MV1 + "]], table:alias=[default." + MV1 + "])", ""), result);
   }
 
   private static final List<String> EXPECTED_RESULT_AFTER_UPDATE = Arrays.asList(
@@ -178,7 +182,8 @@ public void testWhenMajorCompactionThenIncrementalMVRebuildNotUsedInPresenceOfUp
     assertResult(EXPECTED_RESULT_AFTER_UPDATE, result);
 
     result = execSelectAndDumpData("explain cbo select a,b,c from " + TABLE1 + " where a > 0 or a is null", driver, "");
-    Assert.assertEquals(Arrays.asList("CBO PLAN:", "HiveTableScan(table=[[default, " + MV1 + "]], table:alias=[default." + MV1 + "])", ""), result);
+    Assert.assertEquals(Arrays.asList("CBO PLAN:", "HiveProject(a=[$0], b=[$1], c=[$2])",
+        "  HiveTableScan(table=[[default, " + MV1 + "]], table:alias=[default." + MV1 + "])", ""), result);
   }
 
   private void assertResult(List<String> expected, List<String> actual) {
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/translator/ASTConverter.java b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/translator/ASTConverter.java
index be5aabea8c0..8baa14c265a 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/translator/ASTConverter.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/translator/ASTConverter.java
@@ -69,7 +69,6 @@
 import org.apache.calcite.sql.fun.SqlStdOperatorTable;
 import org.apache.calcite.sql.type.SqlTypeName;
 import org.apache.calcite.util.ImmutableBitSet;
-import org.apache.hadoop.hive.metastore.api.FieldSchema;
 import org.apache.hadoop.hive.ql.QueryProperties;
 import org.apache.hadoop.hive.ql.metadata.VirtualColumn;
 import org.apache.hadoop.hive.ql.optimizer.calcite.CalciteSemanticException;
@@ -91,7 +90,6 @@
 import org.apache.hadoop.hive.ql.parse.ParseContext;
 import org.apache.hadoop.hive.ql.parse.ParseDriver;
 import org.apache.hadoop.hive.ql.parse.ParseException;
-import org.apache.hadoop.hive.ql.parse.type.RexNodeExprFactory;
 import org.apache.hadoop.hive.ql.plan.mapper.PlanMapper;
 import org.apache.hadoop.hive.ql.util.DirectionUtils;
 import org.apache.hadoop.hive.ql.util.NullOrdering;
@@ -131,10 +129,9 @@ public class ASTConverter {
     this.ctes = ctes;
   }
 
-  public static ASTNode convert(final RelNode relNode, List<FieldSchema> resultSchema, boolean alignColumns, PlanMapper planMapper)
+  public static ASTNode convert(final RelNode relNode, PlanMapper planMapper)
       throws CalciteSemanticException {
-    RelNode root = PlanModifierForASTConv.convertOpTree(relNode, resultSchema, alignColumns);
-    ASTConverter c = new ASTConverter(root, 0, planMapper, new ArrayList<>());
+    ASTConverter c = new ASTConverter(relNode, 0, planMapper, new ArrayList<>());
     ASTNode r = c.convert();
     for (ASTNode cte : c.ctes) {
       r.insertChild(0, cte);
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/parse/CalcitePlanner.java b/ql/src/java/org/apache/hadoop/hive/ql/parse/CalcitePlanner.java
index defe96db9f9..00e96773fa8 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/parse/CalcitePlanner.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/parse/CalcitePlanner.java
@@ -295,6 +295,7 @@
 import org.apache.hadoop.hive.ql.optimizer.calcite.stats.HiveRelMetadataQuery;
 import org.apache.hadoop.hive.ql.optimizer.calcite.translator.ASTBuilder;
 import org.apache.hadoop.hive.ql.optimizer.calcite.translator.ASTConverter;
+import org.apache.hadoop.hive.ql.optimizer.calcite.translator.PlanModifierForASTConv;
 import org.apache.hadoop.hive.ql.parse.type.FunctionHelper;
 import org.apache.hadoop.hive.ql.parse.type.FunctionHelper.AggregateInfo;
 import org.apache.hadoop.hive.ql.parse.type.HiveFunctionHelper;
@@ -605,7 +606,9 @@ Operator genOPTree(ASTNode ast, PlannerContext plannerCtx) throws SemanticExcept
             }
           } else {
             // 1. Convert Plan to AST
-            ASTNode newAST = getOptimizedAST(newPlan);
+            newPlan = PlanModifierForASTConv.convertOpTree(newPlan, resultSchema,
+                HiveConf.getBoolVar(conf, HiveConf.ConfVars.HIVE_COLUMN_ALIGNMENT));
+            ASTNode newAST = ASTConverter.convert(newPlan, ctx.getPlanMapper());
 
             // 1.1. Fix up the query for insert/ctas/materialized views
             newAST = fixUpAfterCbo(ast, newAST, cboCtx);
@@ -1384,28 +1387,6 @@ public boolean supportsCharSet() {
     return null;
   }
 
-  /**
-   * Get Optimized AST for the given QB tree in the semAnalyzer.
-   *
-   * @return Optimized operator tree translated in to Hive AST
-   * @throws SemanticException
-   */
-  ASTNode getOptimizedAST() throws SemanticException {
-    return getOptimizedAST(logicalPlan());
-  }
-
-  /**
-   * Get Optimized AST for the given QB tree in the semAnalyzer.
-   *
-   * @return Optimized operator tree translated in to Hive AST
-   * @throws SemanticException
-   */
-  ASTNode getOptimizedAST(RelNode optimizedOptiqPlan) throws SemanticException {
-    ASTNode optiqOptimizedAST = ASTConverter.convert(optimizedOptiqPlan, resultSchema,
-            HiveConf.getBoolVar(conf, HiveConf.ConfVars.HIVE_COLUMN_ALIGNMENT),ctx.getPlanMapper());
-    return optiqOptimizedAST;
-  }
-
   /**
    * Get Optimized Hive Operator DAG for the given QB tree in the semAnalyzer.
    *
diff --git a/ql/src/test/results/clientpositive/bucket_map_join_spark1.q.out b/ql/src/test/results/clientpositive/bucket_map_join_spark1.q.out
index 51609d6dcc0..592cd20e445 100644
--- a/ql/src/test/results/clientpositive/bucket_map_join_spark1.q.out
+++ b/ql/src/test/results/clientpositive/bucket_map_join_spark1.q.out
@@ -126,7 +126,7 @@ POSTHOOK: Input: default@srcbucket_mapjoin_part_2_n16@ds=2008-04-08
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n19
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n19@ds=2008-04-08
 POSTHOOK: Output: default@bucketmapjoin_tmp_result_n9
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, `t2`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`srcbucket_mapjoin_part_n19`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -555,7 +555,7 @@ POSTHOOK: Input: default@srcbucket_mapjoin_part_2_n16@ds=2008-04-08
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n19
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n19@ds=2008-04-08
 POSTHOOK: Output: default@bucketmapjoin_tmp_result_n9
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, `t2`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`srcbucket_mapjoin_part_n19`
 WHERE `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/bucket_map_join_spark2.q.out b/ql/src/test/results/clientpositive/bucket_map_join_spark2.q.out
index 605f2de4eef..606443e12f3 100644
--- a/ql/src/test/results/clientpositive/bucket_map_join_spark2.q.out
+++ b/ql/src/test/results/clientpositive/bucket_map_join_spark2.q.out
@@ -110,7 +110,7 @@ POSTHOOK: Input: default@srcbucket_mapjoin_part_2_n10@ds=2008-04-08
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n12
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n12@ds=2008-04-08
 POSTHOOK: Output: default@bucketmapjoin_tmp_result_n5
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, `t2`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`srcbucket_mapjoin_part_n12`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -539,7 +539,7 @@ POSTHOOK: Input: default@srcbucket_mapjoin_part_2_n10@ds=2008-04-08
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n12
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n12@ds=2008-04-08
 POSTHOOK: Output: default@bucketmapjoin_tmp_result_n5
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, `t2`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`srcbucket_mapjoin_part_n12`
 WHERE `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/bucket_map_join_spark3.q.out b/ql/src/test/results/clientpositive/bucket_map_join_spark3.q.out
index b1688bc0f5e..a13e6f71eab 100644
--- a/ql/src/test/results/clientpositive/bucket_map_join_spark3.q.out
+++ b/ql/src/test/results/clientpositive/bucket_map_join_spark3.q.out
@@ -110,7 +110,7 @@ POSTHOOK: Input: default@srcbucket_mapjoin_part_2_n3@ds=2008-04-08
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n4
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n4@ds=2008-04-08
 POSTHOOK: Output: default@bucketmapjoin_tmp_result_n1
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, `t2`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`srcbucket_mapjoin_part_n4`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -539,7 +539,7 @@ POSTHOOK: Input: default@srcbucket_mapjoin_part_2_n3@ds=2008-04-08
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n4
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n4@ds=2008-04-08
 POSTHOOK: Output: default@bucketmapjoin_tmp_result_n1
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, `t2`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`srcbucket_mapjoin_part_n4`
 WHERE `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/bucket_map_join_spark4.q.out b/ql/src/test/results/clientpositive/bucket_map_join_spark4.q.out
index 1528a78dbd0..bbdea11b2c6 100644
--- a/ql/src/test/results/clientpositive/bucket_map_join_spark4.q.out
+++ b/ql/src/test/results/clientpositive/bucket_map_join_spark4.q.out
@@ -74,7 +74,7 @@ POSTHOOK: Input: default@tbl1_n0
 POSTHOOK: Input: default@tbl2_n0
 POSTHOOK: Input: default@tbl3
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, `t2`.`value` AS `value0`, `t4`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value` AS `val1`, `t2`.`value` AS `val2`, `t4`.`value` AS `val3`
 FROM (SELECT `key`, `value`
 FROM `default`.`tbl1_n0`
 WHERE `key` IS NOT NULL AND `value` IS NOT NULL) AS `t0`
@@ -414,7 +414,7 @@ POSTHOOK: Input: default@tbl1_n0
 POSTHOOK: Input: default@tbl2_n0
 POSTHOOK: Input: default@tbl3
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, `t2`.`value` AS `value0`, `t4`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value` AS `val1`, `t2`.`value` AS `val2`, `t4`.`value` AS `val3`
 FROM (SELECT `key`, `value`
 FROM `default`.`tbl1_n0`
 WHERE `key` IS NOT NULL AND `value` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/encrypted/encryption_join_unencrypted_tbl.q.out b/ql/src/test/results/clientpositive/encrypted/encryption_join_unencrypted_tbl.q.out
index b949f6823c9..c0d2e307305 100644
--- a/ql/src/test/results/clientpositive/encrypted/encryption_join_unencrypted_tbl.q.out
+++ b/ql/src/test/results/clientpositive/encrypted/encryption_join_unencrypted_tbl.q.out
@@ -544,7 +544,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@encrypted_table
 POSTHOOK: Input: default@src
 POSTHOOK: Output: hdfs://### HDFS PATH ###
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, `t2`.`key` AS `key1`, `t2`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `t1.key`, `t0`.`value` AS `t1.value`, `t2`.`key` AS `t2.key`, `t2`.`value` AS `t2.value`
 FROM (SELECT `key`, `value`, CAST(`key` AS DOUBLE) AS `EXPR$0`
 FROM `default`.`src`
 WHERE CAST(`key` AS DOUBLE) IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/encrypted/encryption_join_with_different_encryption_keys.q.out b/ql/src/test/results/clientpositive/encrypted/encryption_join_with_different_encryption_keys.q.out
index f45e10b8b99..1b8d27e2f91 100644
--- a/ql/src/test/results/clientpositive/encrypted/encryption_join_with_different_encryption_keys.q.out
+++ b/ql/src/test/results/clientpositive/encrypted/encryption_join_with_different_encryption_keys.q.out
@@ -64,7 +64,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@table_key_1
 POSTHOOK: Input: default@table_key_2
 POSTHOOK: Output: hdfs://### HDFS PATH ###
-OPTIMIZED SQL: SELECT *
+OPTIMIZED SQL: SELECT `t0`.`key` AS `t1.key`, `t0`.`value` AS `t1.value`, `t2`.`key` AS `t2.key`, `t2`.`value` AS `t2.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`table_key_1`
 WHERE `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/acid_bucket_pruning.q.out b/ql/src/test/results/clientpositive/llap/acid_bucket_pruning.q.out
index acc85c95e40..77ed8b68e9d 100644
--- a/ql/src/test/results/clientpositive/llap/acid_bucket_pruning.q.out
+++ b/ql/src/test/results/clientpositive/llap/acid_bucket_pruning.q.out
@@ -34,7 +34,7 @@ SELECT * FROM acidTblDefault WHERE a = 1
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@acidtbldefault
 POSTHOOK: Output: hdfs://### HDFS PATH ###
-OPTIMIZED SQL: SELECT CAST(1 AS INT) AS `$f0`
+OPTIMIZED SQL: SELECT CAST(1 AS INT) AS `acidtbldefault.a`
 FROM `default`.`acidtbldefault`
 WHERE `a` = 1
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/acid_nullscan.q.out b/ql/src/test/results/clientpositive/llap/acid_nullscan.q.out
index 67f143f9813..555f5f70072 100644
--- a/ql/src/test/results/clientpositive/llap/acid_nullscan.q.out
+++ b/ql/src/test/results/clientpositive/llap/acid_nullscan.q.out
@@ -38,7 +38,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: _dummy_database@_dummy_table
 POSTHOOK: Input: default@acid_vectorized_n1
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT SUM(`$f0`) AS `$f0`
+OPTIMIZED SQL: SELECT SUM(`$f0`) AS `_c0`
 FROM (SELECT *
 FROM (SELECT NULL AS `$f0`) AS `t`
 WHERE 1 = 0) AS `t`
diff --git a/ql/src/test/results/clientpositive/llap/alter_partition_coltype.q.out b/ql/src/test/results/clientpositive/llap/alter_partition_coltype.q.out
index 77062447ab1..c16ac363f08 100644
--- a/ql/src/test/results/clientpositive/llap/alter_partition_coltype.q.out
+++ b/ql/src/test/results/clientpositive/llap/alter_partition_coltype.q.out
@@ -74,7 +74,7 @@ POSTHOOK: query: explain extended select count(*) from alter_coltype where dt =
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@alter_coltype
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM `default`.`alter_coltype`
 WHERE `dt` = 100
 STAGE DEPENDENCIES:
@@ -128,7 +128,7 @@ POSTHOOK: query: explain extended select count(*) from alter_coltype where ts =
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@alter_coltype
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM `default`.`alter_coltype`
 WHERE `ts` = 6.30
 STAGE DEPENDENCIES:
@@ -158,7 +158,7 @@ POSTHOOK: query: explain extended select count(*) from alter_coltype where ts =
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@alter_coltype
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM `default`.`alter_coltype`
 WHERE `ts` = 3 AND `dt` = 100
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/ambiguitycheck.q.out b/ql/src/test/results/clientpositive/llap/ambiguitycheck.q.out
index 6b7fa8cb677..1e1204f1a39 100644
--- a/ql/src/test/results/clientpositive/llap/ambiguitycheck.q.out
+++ b/ql/src/test/results/clientpositive/llap/ambiguitycheck.q.out
@@ -709,7 +709,7 @@ POSTHOOK: query: explain extended select int(1.2) from src limit 1
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST(1 AS INT) AS `_o__c0`
+OPTIMIZED SQL: SELECT CAST(1 AS INT) AS `_c0`
 FROM `default`.`src`
 LIMIT 1
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/ambiguous_col.q.out b/ql/src/test/results/clientpositive/llap/ambiguous_col.q.out
index f43bc3bd0d1..03c9d01a446 100644
--- a/ql/src/test/results/clientpositive/llap/ambiguous_col.q.out
+++ b/ql/src/test/results/clientpositive/llap/ambiguous_col.q.out
@@ -9,7 +9,7 @@ POSTHOOK: Input: default@src
 POSTHOOK: Input: default@src1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[$0], _o__col1=[$0], value=[$1])
+HiveProject(t.key=[$0], t._col1=[$0], t.value=[$1])
   HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(key=[$0], value=[$1])
       HiveFilter(condition=[IS NOT NULL($0)])
@@ -170,7 +170,7 @@ POSTHOOK: Input: default@src
 POSTHOOK: Input: default@src1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[$0], _o__col1=[$0])
+HiveProject(t.key=[$0], t._col1=[$0])
   HiveJoin(condition=[=($0, $1)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(key=[$0])
       HiveFilter(condition=[IS NOT NULL($0)])
@@ -330,7 +330,7 @@ POSTHOOK: Input: default@src
 POSTHOOK: Input: default@src1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[$0], _o__col1=[$0])
+HiveProject(t.key=[$0], t._col1=[$0])
   HiveJoin(condition=[=($0, $1)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(key=[$0])
       HiveFilter(condition=[IS NOT NULL($0)])
@@ -488,8 +488,9 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{}], agg#0=[count()])
-  HiveTableScan(table=[[default, src]], table:alias=[src])
+HiveProject(_c0=[$0])
+  HiveAggregate(group=[{}], agg#0=[count()])
+    HiveTableScan(table=[[default, src]], table:alias=[src])
 
 PREHOOK: query: explain select count(*) from (select key, key from src) subq
 PREHOOK: type: QUERY
diff --git a/ql/src/test/results/clientpositive/llap/analyze_table_null_partition.q.out b/ql/src/test/results/clientpositive/llap/analyze_table_null_partition.q.out
index 1b52ff7d099..9e253be13e1 100644
--- a/ql/src/test/results/clientpositive/llap/analyze_table_null_partition.q.out
+++ b/ql/src/test/results/clientpositive/llap/analyze_table_null_partition.q.out
@@ -104,7 +104,7 @@ POSTHOOK: Input: default@test2_n6@age=30
 POSTHOOK: Input: default@test2_n6@age=40
 POSTHOOK: Input: default@test2_n6@age=__HIVE_DEFAULT_PARTITION__
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `name`, `age`
+OPTIMIZED SQL: SELECT `name` AS `test2_n6.name`, `age` AS `test2_n6.age`
 FROM `default`.`test2_n6`
 STAGE DEPENDENCIES:
   Stage-0 is a root stage
diff --git a/ql/src/test/results/clientpositive/llap/annotate_stats_filter.q.out b/ql/src/test/results/clientpositive/llap/annotate_stats_filter.q.out
index 3ddbcfc696d..f0397cdbb33 100644
--- a/ql/src/test/results/clientpositive/llap/annotate_stats_filter.q.out
+++ b/ql/src/test/results/clientpositive/llap/annotate_stats_filter.q.out
@@ -366,7 +366,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@loc_orc
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(state=[$0], locid=[$1], zip=[$2], year=[$3])
+HiveProject(loc_orc.state=[$0], loc_orc.locid=[$1], loc_orc.zip=[$2], loc_orc.year=[$3])
   HiveTableScan(table=[[default, loc_orc]], table:alias=[loc_orc])
 
 PREHOOK: query: explain select * from loc_orc where 'foo'
diff --git a/ql/src/test/results/clientpositive/llap/antijoin.q.out b/ql/src/test/results/clientpositive/llap/antijoin.q.out
index 681e50bd7c5..e716de6d9b7 100644
--- a/ql/src/test/results/clientpositive/llap/antijoin.q.out
+++ b/ql/src/test/results/clientpositive/llap/antijoin.q.out
@@ -221,7 +221,7 @@ POSTHOOK: Input: default@t2_n33
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortExchange(distribution=[any], collation=[[0, 1]])
-  HiveProject(key=[$0], value=[$1])
+  HiveProject(a.key=[$0], a.value=[$1])
     HiveAntiJoin(condition=[=($0, $3)], joinType=[anti])
       HiveProject(key=[$0], value=[$1])
         HiveTableScan(table=[[default, t1_n55]], table:alias=[a])
@@ -347,12 +347,13 @@ POSTHOOK: Input: default@t1_n55
 POSTHOOK: Input: default@t2_n33
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAntiJoin(condition=[=($0, $2)], joinType=[anti])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, t1_n55]], table:alias=[a])
-  HiveProject(key=[$0])
-    HiveFilter(condition=[IS NOT NULL($0)])
-      HiveTableScan(table=[[default, t2_n33]], table:alias=[b])
+HiveProject(a.key=[$0], a.value=[$1])
+  HiveAntiJoin(condition=[=($0, $2)], joinType=[anti])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, t1_n55]], table:alias=[a])
+    HiveProject(key=[$0])
+      HiveFilter(condition=[IS NOT NULL($0)])
+        HiveTableScan(table=[[default, t2_n33]], table:alias=[b])
 
 PREHOOK: query: select a.key, a.value from t1_n55 a left join t2_n33 b on a.key=b.key where b.key is null
 PREHOOK: type: QUERY
@@ -534,7 +535,7 @@ POSTHOOK: Input: default@t3_n12
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortExchange(distribution=[any], collation=[[0, 1]])
-  HiveProject(key=[$1], value=[$2])
+  HiveProject(a.key=[$1], a.value=[$2])
     HiveJoin(condition=[=($1, $0)], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject(key=[$0])
         HiveFilter(condition=[IS NOT NULL($0)])
@@ -679,7 +680,7 @@ POSTHOOK: Input: default@t2_n33
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortExchange(distribution=[any], collation=[[0, 1]])
-  HiveProject(key=[$0], value=[$1])
+  HiveProject(a.key=[$0], a.value=[$1])
     HiveAntiJoin(condition=[=($0, $3)], joinType=[anti])
       HiveProject(key=[$0], value=[$1])
         HiveTableScan(table=[[default, t1_n55]], table:alias=[a])
@@ -797,12 +798,13 @@ POSTHOOK: Input: default@t1_n55
 POSTHOOK: Input: default@t2_n33
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAntiJoin(condition=[=($0, $2)], joinType=[anti])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, t1_n55]], table:alias=[a])
-  HiveProject(key=[$0])
-    HiveFilter(condition=[IS NOT NULL($0)])
-      HiveTableScan(table=[[default, t2_n33]], table:alias=[b])
+HiveProject(a.key=[$0], a.value=[$1])
+  HiveAntiJoin(condition=[=($0, $2)], joinType=[anti])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, t1_n55]], table:alias=[a])
+    HiveProject(key=[$0])
+      HiveFilter(condition=[IS NOT NULL($0)])
+        HiveTableScan(table=[[default, t2_n33]], table:alias=[b])
 
 PREHOOK: query: select a.key, a.value from t1_n55 a left join t2_n33 b on a.key=b.key where b.key is null
 PREHOOK: type: QUERY
@@ -970,7 +972,7 @@ POSTHOOK: Input: default@t3_n12
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortExchange(distribution=[any], collation=[[0, 1]])
-  HiveProject(key=[$1], value=[$2])
+  HiveProject(a.key=[$1], a.value=[$2])
     HiveJoin(condition=[=($1, $0)], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject(key=[$0])
         HiveFilter(condition=[IS NOT NULL($0)])
diff --git a/ql/src/test/results/clientpositive/llap/antijoin2.q.out b/ql/src/test/results/clientpositive/llap/antijoin2.q.out
index c7954b5e0fd..462abc890ec 100644
--- a/ql/src/test/results/clientpositive/llap/antijoin2.q.out
+++ b/ql/src/test/results/clientpositive/llap/antijoin2.q.out
@@ -235,18 +235,19 @@ POSTHOOK: Input: default@tt2
 POSTHOOK: Input: default@tt3
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{}], agg#0=[sum($1)])
-  HiveAntiJoin(condition=[=($0, $4)], joinType=[anti])
-    HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
-      HiveProject(ws_order_number=[$0], ws_ext_ship_cost=[$1])
+HiveProject(_c0=[$0])
+  HiveAggregate(group=[{}], agg#0=[sum($1)])
+    HiveAntiJoin(condition=[=($0, $4)], joinType=[anti])
+      HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
+        HiveProject(ws_order_number=[$0], ws_ext_ship_cost=[$1])
+          HiveFilter(condition=[IS NOT NULL($0)])
+            HiveTableScan(table=[[default, tt1]], table:alias=[ws1])
+        HiveProject(ws_order_number=[$0])
+          HiveFilter(condition=[IS NOT NULL($0)])
+            HiveTableScan(table=[[default, tt2]], table:alias=[ws2])
+      HiveProject(literalTrue=[true], wr_order_number=[$0])
         HiveFilter(condition=[IS NOT NULL($0)])
-          HiveTableScan(table=[[default, tt1]], table:alias=[ws1])
-      HiveProject(ws_order_number=[$0])
-        HiveFilter(condition=[IS NOT NULL($0)])
-          HiveTableScan(table=[[default, tt2]], table:alias=[ws2])
-    HiveProject(literalTrue=[true], wr_order_number=[$0])
-      HiveFilter(condition=[IS NOT NULL($0)])
-        HiveTableScan(table=[[default, tt3]], table:alias=[wr1])
+          HiveTableScan(table=[[default, tt3]], table:alias=[wr1])
 
 PREHOOK: query: select sum(ws_ext_ship_cost) from tt1 ws1, tt2 ws2
 where ws1.ws_order_number = ws2.ws_order_number
@@ -364,12 +365,13 @@ POSTHOOK: Input: default@tt1
 POSTHOOK: Input: default@tt2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAntiJoin(condition=[=($0, $3)], joinType=[anti])
-  HiveProject(ws_order_number=[$0], ws_ext_ship_cost=[$1])
-    HiveTableScan(table=[[default, tt1]], table:alias=[tt1])
-  HiveProject(literalTrue=[true], ws_order_number=[$0])
-    HiveFilter(condition=[IS NOT NULL($0)])
-      HiveTableScan(table=[[default, tt2]], table:alias=[tt2])
+HiveProject(tt1.ws_order_number=[$0], tt1.ws_ext_ship_cost=[$1])
+  HiveAntiJoin(condition=[=($0, $3)], joinType=[anti])
+    HiveProject(ws_order_number=[$0], ws_ext_ship_cost=[$1])
+      HiveTableScan(table=[[default, tt1]], table:alias=[tt1])
+    HiveProject(literalTrue=[true], ws_order_number=[$0])
+      HiveFilter(condition=[IS NOT NULL($0)])
+        HiveTableScan(table=[[default, tt2]], table:alias=[tt2])
 
 PREHOOK: query: select * from tt1 where not exists(select * from tt2 where tt1.ws_order_number = tt2.ws_order_number)
 PREHOOK: type: QUERY
@@ -550,18 +552,19 @@ POSTHOOK: Input: default@tt2
 POSTHOOK: Input: default@tt3
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{}], agg#0=[sum($1)])
-  HiveAntiJoin(condition=[=($0, $4)], joinType=[anti])
-    HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
-      HiveProject(ws_order_number=[$0], ws_ext_ship_cost=[$1])
+HiveProject(_c0=[$0])
+  HiveAggregate(group=[{}], agg#0=[sum($1)])
+    HiveAntiJoin(condition=[=($0, $4)], joinType=[anti])
+      HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
+        HiveProject(ws_order_number=[$0], ws_ext_ship_cost=[$1])
+          HiveFilter(condition=[IS NOT NULL($0)])
+            HiveTableScan(table=[[default, tt1]], table:alias=[ws1])
+        HiveProject(ws_order_number=[$0])
+          HiveFilter(condition=[IS NOT NULL($0)])
+            HiveTableScan(table=[[default, tt2]], table:alias=[ws2])
+      HiveProject(literalTrue=[true], wr_order_number=[$0])
         HiveFilter(condition=[IS NOT NULL($0)])
-          HiveTableScan(table=[[default, tt1]], table:alias=[ws1])
-      HiveProject(ws_order_number=[$0])
-        HiveFilter(condition=[IS NOT NULL($0)])
-          HiveTableScan(table=[[default, tt2]], table:alias=[ws2])
-    HiveProject(literalTrue=[true], wr_order_number=[$0])
-      HiveFilter(condition=[IS NOT NULL($0)])
-        HiveTableScan(table=[[default, tt3]], table:alias=[wr1])
+          HiveTableScan(table=[[default, tt3]], table:alias=[wr1])
 
 PREHOOK: query: select sum(ws_ext_ship_cost) from tt1 ws1, tt2 ws2
 where ws1.ws_order_number = ws2.ws_order_number
@@ -679,12 +682,13 @@ POSTHOOK: Input: default@tt1
 POSTHOOK: Input: default@tt2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAntiJoin(condition=[=($0, $3)], joinType=[anti])
-  HiveProject(ws_order_number=[$0], ws_ext_ship_cost=[$1])
-    HiveTableScan(table=[[default, tt1]], table:alias=[tt1])
-  HiveProject(literalTrue=[true], ws_order_number=[$0])
-    HiveFilter(condition=[IS NOT NULL($0)])
-      HiveTableScan(table=[[default, tt2]], table:alias=[tt2])
+HiveProject(tt1.ws_order_number=[$0], tt1.ws_ext_ship_cost=[$1])
+  HiveAntiJoin(condition=[=($0, $3)], joinType=[anti])
+    HiveProject(ws_order_number=[$0], ws_ext_ship_cost=[$1])
+      HiveTableScan(table=[[default, tt1]], table:alias=[tt1])
+    HiveProject(literalTrue=[true], ws_order_number=[$0])
+      HiveFilter(condition=[IS NOT NULL($0)])
+        HiveTableScan(table=[[default, tt2]], table:alias=[tt2])
 
 PREHOOK: query: select * from tt1 where not exists(select * from tt2 where tt1.ws_order_number = tt2.ws_order_number)
 PREHOOK: type: QUERY
@@ -858,18 +862,19 @@ POSTHOOK: Input: default@tt2
 POSTHOOK: Input: default@tt3
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{}], agg#0=[sum($1)])
-  HiveAntiJoin(condition=[=($0, $4)], joinType=[anti])
-    HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
-      HiveProject(ws_order_number=[$0], ws_ext_ship_cost=[$1])
-        HiveFilter(condition=[IS NOT NULL($0)])
-          HiveTableScan(table=[[default, tt1]], table:alias=[ws1])
-      HiveProject(ws_order_number=[$0])
+HiveProject(_c0=[$0])
+  HiveAggregate(group=[{}], agg#0=[sum($1)])
+    HiveAntiJoin(condition=[=($0, $4)], joinType=[anti])
+      HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
+        HiveProject(ws_order_number=[$0], ws_ext_ship_cost=[$1])
+          HiveFilter(condition=[IS NOT NULL($0)])
+            HiveTableScan(table=[[default, tt1]], table:alias=[ws1])
+        HiveProject(ws_order_number=[$0])
+          HiveFilter(condition=[IS NOT NULL($0)])
+            HiveTableScan(table=[[default, tt2]], table:alias=[ws2])
+      HiveProject(literalTrue=[true], wr_order_number=[$0])
         HiveFilter(condition=[IS NOT NULL($0)])
-          HiveTableScan(table=[[default, tt2]], table:alias=[ws2])
-    HiveProject(literalTrue=[true], wr_order_number=[$0])
-      HiveFilter(condition=[IS NOT NULL($0)])
-        HiveTableScan(table=[[default, tt3]], table:alias=[wr1])
+          HiveTableScan(table=[[default, tt3]], table:alias=[wr1])
 
 PREHOOK: query: select sum(ws_ext_ship_cost) from tt1 ws1, tt2 ws2
 where ws1.ws_order_number = ws2.ws_order_number
@@ -1086,18 +1091,19 @@ POSTHOOK: Input: default@tt2
 POSTHOOK: Input: default@tt3
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{}], agg#0=[sum($1)])
-  HiveAntiJoin(condition=[=($0, $4)], joinType=[anti])
-    HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
-      HiveProject(ws_order_number=[$0], ws_ext_ship_cost=[$1])
+HiveProject(_c0=[$0])
+  HiveAggregate(group=[{}], agg#0=[sum($1)])
+    HiveAntiJoin(condition=[=($0, $4)], joinType=[anti])
+      HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
+        HiveProject(ws_order_number=[$0], ws_ext_ship_cost=[$1])
+          HiveFilter(condition=[IS NOT NULL($0)])
+            HiveTableScan(table=[[default, tt1]], table:alias=[ws1])
+        HiveProject(ws_order_number=[$0])
+          HiveFilter(condition=[IS NOT NULL($0)])
+            HiveTableScan(table=[[default, tt2]], table:alias=[ws2])
+      HiveProject(literalTrue=[true], wr_order_number=[$0])
         HiveFilter(condition=[IS NOT NULL($0)])
-          HiveTableScan(table=[[default, tt1]], table:alias=[ws1])
-      HiveProject(ws_order_number=[$0])
-        HiveFilter(condition=[IS NOT NULL($0)])
-          HiveTableScan(table=[[default, tt2]], table:alias=[ws2])
-    HiveProject(literalTrue=[true], wr_order_number=[$0])
-      HiveFilter(condition=[IS NOT NULL($0)])
-        HiveTableScan(table=[[default, tt3]], table:alias=[wr1])
+          HiveTableScan(table=[[default, tt3]], table:alias=[wr1])
 
 PREHOOK: query: select sum(ws_ext_ship_cost) from tt1 ws1, tt2 ws2
 where ws1.ws_order_number = ws2.ws_order_number
diff --git a/ql/src/test/results/clientpositive/llap/antijoin_conversion.q.out b/ql/src/test/results/clientpositive/llap/antijoin_conversion.q.out
index c25c8427a27..451093ddd6b 100644
--- a/ql/src/test/results/clientpositive/llap/antijoin_conversion.q.out
+++ b/ql/src/test/results/clientpositive/llap/antijoin_conversion.q.out
@@ -360,7 +360,7 @@ POSTHOOK: Input: default@tab1
 POSTHOOK: Input: default@tab2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(col1=[$0], col2=[$1])
+HiveProject(t1.col1=[$0], t1.col2=[$1])
   HiveFilter(condition=[IS NULL($4)])
     HiveJoin(condition=[AND(=($4, $0), =($3, $1))], joinType=[left], algorithm=[none], cost=[not available])
       HiveJoin(condition=[AND(=($2, $0), =($3, $1))], joinType=[left], algorithm=[none], cost=[not available])
diff --git a/ql/src/test/results/clientpositive/llap/autoColumnStats_1.q.out b/ql/src/test/results/clientpositive/llap/autoColumnStats_1.q.out
index 50c644c3d2d..12288c74b8b 100644
--- a/ql/src/test/results/clientpositive/llap/autoColumnStats_1.q.out
+++ b/ql/src/test/results/clientpositive/llap/autoColumnStats_1.q.out
@@ -30,7 +30,7 @@ POSTHOOK: query: explain extended select * from src_multi1_n1
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src_multi1_n1
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, `value`
+OPTIMIZED SQL: SELECT `key` AS `src_multi1_n1.key`, `value` AS `src_multi1_n1.value`
 FROM `default`.`src_multi1_n1`
 STAGE DEPENDENCIES:
   Stage-0 is a root stage
diff --git a/ql/src/test/results/clientpositive/llap/autoColumnStats_2.q.out b/ql/src/test/results/clientpositive/llap/autoColumnStats_2.q.out
index 3e5830aaedf..51f7bcbbcab 100644
--- a/ql/src/test/results/clientpositive/llap/autoColumnStats_2.q.out
+++ b/ql/src/test/results/clientpositive/llap/autoColumnStats_2.q.out
@@ -30,7 +30,7 @@ POSTHOOK: query: explain extended select * from src_multi1
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src_multi1
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, `value`
+OPTIMIZED SQL: SELECT `key` AS `src_multi1.key`, `value` AS `src_multi1.value`
 FROM `default`.`src_multi1`
 STAGE DEPENDENCIES:
   Stage-0 is a root stage
diff --git a/ql/src/test/results/clientpositive/llap/auto_join_reordering_values.q.out b/ql/src/test/results/clientpositive/llap/auto_join_reordering_values.q.out
index bdd2ba97061..16332cf3154 100644
--- a/ql/src/test/results/clientpositive/llap/auto_join_reordering_values.q.out
+++ b/ql/src/test/results/clientpositive/llap/auto_join_reordering_values.q.out
@@ -90,7 +90,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@orderpayment_small
 POSTHOOK: Input: default@user_small
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t4`.`date`, `t6`.`dealid`
+OPTIMIZED SQL: SELECT `t4`.`date` AS `dim_pay_date.date`, `t6`.`dealid` AS `deal.dealid`
 FROM (SELECT `userid`
 FROM `default`.`user_small`
 WHERE `userid` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_1.q.out b/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_1.q.out
index b3d719282cd..117fbef27ef 100644
--- a/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_1.q.out
+++ b/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_1.q.out
@@ -119,7 +119,7 @@ POSTHOOK: Input: default@bucket_big_n1@ds=2008-04-09
 POSTHOOK: Input: default@bucket_small_n1
 POSTHOOK: Input: default@bucket_small_n1@ds=2008-04-08
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM (SELECT `key`
 FROM `default`.`bucket_small_n1`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -396,7 +396,7 @@ POSTHOOK: Input: default@bucket_big_n1@ds=2008-04-09
 POSTHOOK: Input: default@bucket_small_n1
 POSTHOOK: Input: default@bucket_small_n1@ds=2008-04-08
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM (SELECT `key`
 FROM `default`.`bucket_big_n1`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -673,7 +673,7 @@ POSTHOOK: Input: default@bucket_big_n1@ds=2008-04-09
 POSTHOOK: Input: default@bucket_small_n1
 POSTHOOK: Input: default@bucket_small_n1@ds=2008-04-08
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM (SELECT `key`
 FROM `default`.`bucket_big_n1`
 WHERE `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_11.q.out b/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_11.q.out
index ace148112f7..3a76120a264 100644
--- a/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_11.q.out
+++ b/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_11.q.out
@@ -117,7 +117,7 @@ POSTHOOK: Input: default@bucket_big_n11@ds=2008-04-09
 POSTHOOK: Input: default@bucket_small_n11
 POSTHOOK: Input: default@bucket_small_n11@ds=2008-04-08
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM (SELECT `key`
 FROM `default`.`bucket_small_n11`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -425,7 +425,7 @@ POSTHOOK: Input: default@bucket_big_n11@ds=2008-04-09
 POSTHOOK: Input: default@bucket_small_n11
 POSTHOOK: Input: default@bucket_small_n11@ds=2008-04-08
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM (SELECT `key`
 FROM `default`.`bucket_small_n11`
 WHERE `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_12.q.out b/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_12.q.out
index 8694774880f..ac52a6721aa 100644
--- a/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_12.q.out
+++ b/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_12.q.out
@@ -161,7 +161,7 @@ POSTHOOK: Input: default@bucket_medium@ds=2008-04-08
 POSTHOOK: Input: default@bucket_small_n15
 POSTHOOK: Input: default@bucket_small_n15@ds=2008-04-08
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM (SELECT 0 AS `DUMMY`
 FROM `default`.`bucket_medium`) AS `t`,
 (SELECT 0 AS `DUMMY`
diff --git a/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_2.q.out b/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_2.q.out
index fbdf2d6f17c..32cd17a5c9f 100644
--- a/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_2.q.out
+++ b/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_2.q.out
@@ -101,7 +101,7 @@ POSTHOOK: Input: default@bucket_big_n3@ds=2008-04-09
 POSTHOOK: Input: default@bucket_small_n3
 POSTHOOK: Input: default@bucket_small_n3@ds=2008-04-08
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM (SELECT `key`
 FROM `default`.`bucket_big_n3`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -378,7 +378,7 @@ POSTHOOK: Input: default@bucket_big_n3@ds=2008-04-09
 POSTHOOK: Input: default@bucket_small_n3
 POSTHOOK: Input: default@bucket_small_n3@ds=2008-04-08
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM (SELECT `key`
 FROM `default`.`bucket_big_n3`
 WHERE `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_3.q.out b/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_3.q.out
index 466aa684361..182c837daa3 100644
--- a/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_3.q.out
+++ b/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_3.q.out
@@ -101,7 +101,7 @@ POSTHOOK: Input: default@bucket_small_n9
 POSTHOOK: Input: default@bucket_small_n9@ds=2008-04-08
 POSTHOOK: Input: default@bucket_small_n9@ds=2008-04-09
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM (SELECT `key`
 FROM `default`.`bucket_small_n9`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -378,7 +378,7 @@ POSTHOOK: Input: default@bucket_small_n9
 POSTHOOK: Input: default@bucket_small_n9@ds=2008-04-08
 POSTHOOK: Input: default@bucket_small_n9@ds=2008-04-09
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM (SELECT `key`
 FROM `default`.`bucket_big_n9`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -655,7 +655,7 @@ POSTHOOK: Input: default@bucket_small_n9
 POSTHOOK: Input: default@bucket_small_n9@ds=2008-04-08
 POSTHOOK: Input: default@bucket_small_n9@ds=2008-04-09
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM (SELECT `key`
 FROM `default`.`bucket_big_n9`
 WHERE `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_4.q.out b/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_4.q.out
index 20937079ef5..e1b1d6cdb93 100644
--- a/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_4.q.out
+++ b/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_4.q.out
@@ -117,7 +117,7 @@ POSTHOOK: Input: default@bucket_small_n12
 POSTHOOK: Input: default@bucket_small_n12@ds=2008-04-08
 POSTHOOK: Input: default@bucket_small_n12@ds=2008-04-09
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM (SELECT `key`
 FROM `default`.`bucket_small_n12`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -394,7 +394,7 @@ POSTHOOK: Input: default@bucket_small_n12
 POSTHOOK: Input: default@bucket_small_n12@ds=2008-04-08
 POSTHOOK: Input: default@bucket_small_n12@ds=2008-04-09
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM (SELECT `key`
 FROM `default`.`bucket_big_n12`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -671,7 +671,7 @@ POSTHOOK: Input: default@bucket_small_n12
 POSTHOOK: Input: default@bucket_small_n12@ds=2008-04-08
 POSTHOOK: Input: default@bucket_small_n12@ds=2008-04-09
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM (SELECT `key`
 FROM `default`.`bucket_big_n12`
 WHERE `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_5.q.out b/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_5.q.out
index 0ffe70ed20f..7fb9b31aef5 100644
--- a/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_5.q.out
+++ b/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_5.q.out
@@ -76,7 +76,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@bucket_big_n0
 POSTHOOK: Input: default@bucket_small_n0
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM (SELECT `key`
 FROM `default`.`bucket_small_n0`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -292,7 +292,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@bucket_big_n0
 POSTHOOK: Input: default@bucket_small_n0
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM (SELECT `key`
 FROM `default`.`bucket_big_n0`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -508,7 +508,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@bucket_big_n0
 POSTHOOK: Input: default@bucket_small_n0
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM (SELECT `key`
 FROM `default`.`bucket_big_n0`
 WHERE `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_7.q.out b/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_7.q.out
index 243435e3665..5be36413b2b 100644
--- a/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_7.q.out
+++ b/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_7.q.out
@@ -136,7 +136,7 @@ POSTHOOK: Input: default@bucket_small_n6
 POSTHOOK: Input: default@bucket_small_n6@ds=2008-04-08
 POSTHOOK: Input: default@bucket_small_n6@ds=2008-04-09
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM (SELECT `key`
 FROM `default`.`bucket_small_n6`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -458,7 +458,7 @@ POSTHOOK: Input: default@bucket_small_n6
 POSTHOOK: Input: default@bucket_small_n6@ds=2008-04-08
 POSTHOOK: Input: default@bucket_small_n6@ds=2008-04-09
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM (SELECT `key`
 FROM `default`.`bucket_big_n6`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -780,7 +780,7 @@ POSTHOOK: Input: default@bucket_small_n6
 POSTHOOK: Input: default@bucket_small_n6@ds=2008-04-08
 POSTHOOK: Input: default@bucket_small_n6@ds=2008-04-09
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM (SELECT `key`
 FROM `default`.`bucket_big_n6`
 WHERE `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_8.q.out b/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_8.q.out
index 0cee59d0556..aa18802b349 100644
--- a/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_8.q.out
+++ b/ql/src/test/results/clientpositive/llap/auto_sortmerge_join_8.q.out
@@ -136,7 +136,7 @@ POSTHOOK: Input: default@bucket_small_n5
 POSTHOOK: Input: default@bucket_small_n5@ds=2008-04-08
 POSTHOOK: Input: default@bucket_small_n5@ds=2008-04-09
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM (SELECT `key`
 FROM `default`.`bucket_small_n5`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -458,7 +458,7 @@ POSTHOOK: Input: default@bucket_small_n5
 POSTHOOK: Input: default@bucket_small_n5@ds=2008-04-08
 POSTHOOK: Input: default@bucket_small_n5@ds=2008-04-09
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM (SELECT `key`
 FROM `default`.`bucket_big_n5`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -780,7 +780,7 @@ POSTHOOK: Input: default@bucket_small_n5
 POSTHOOK: Input: default@bucket_small_n5@ds=2008-04-08
 POSTHOOK: Input: default@bucket_small_n5@ds=2008-04-09
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM (SELECT `key`
 FROM `default`.`bucket_big_n5`
 WHERE `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/bucket1.q.out b/ql/src/test/results/clientpositive/llap/bucket1.q.out
index 216d9009120..e45dcf217af 100644
--- a/ql/src/test/results/clientpositive/llap/bucket1.q.out
+++ b/ql/src/test/results/clientpositive/llap/bucket1.q.out
@@ -18,7 +18,7 @@ select * from src
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 POSTHOOK: Output: default@bucket1_1
-OPTIMIZED SQL: SELECT `key`, `value`
+OPTIMIZED SQL: SELECT `key` AS `src.key`, `value` AS `src.value`
 FROM `default`.`src`
 STAGE DEPENDENCIES:
   Stage-1 is a root stage
diff --git a/ql/src/test/results/clientpositive/llap/bucket2.q.out b/ql/src/test/results/clientpositive/llap/bucket2.q.out
index 732bfc642d5..a7331b6388e 100644
--- a/ql/src/test/results/clientpositive/llap/bucket2.q.out
+++ b/ql/src/test/results/clientpositive/llap/bucket2.q.out
@@ -18,7 +18,7 @@ select * from src
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 POSTHOOK: Output: default@bucket2_1
-OPTIMIZED SQL: SELECT `key`, `value`
+OPTIMIZED SQL: SELECT `key` AS `src.key`, `value` AS `src.value`
 FROM `default`.`src`
 STAGE DEPENDENCIES:
   Stage-1 is a root stage
diff --git a/ql/src/test/results/clientpositive/llap/bucket3.q.out b/ql/src/test/results/clientpositive/llap/bucket3.q.out
index 940cd88f5d2..38daef1a979 100644
--- a/ql/src/test/results/clientpositive/llap/bucket3.q.out
+++ b/ql/src/test/results/clientpositive/llap/bucket3.q.out
@@ -18,7 +18,7 @@ select * from src
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 POSTHOOK: Output: default@bucket3_1@ds=1
-OPTIMIZED SQL: SELECT `key`, `value`
+OPTIMIZED SQL: SELECT `key` AS `src.key`, `value` AS `src.value`
 FROM `default`.`src`
 STAGE DEPENDENCIES:
   Stage-1 is a root stage
diff --git a/ql/src/test/results/clientpositive/llap/bucket4.q.out b/ql/src/test/results/clientpositive/llap/bucket4.q.out
index b0e81c638a0..ed0ef8fd5d5 100644
--- a/ql/src/test/results/clientpositive/llap/bucket4.q.out
+++ b/ql/src/test/results/clientpositive/llap/bucket4.q.out
@@ -18,7 +18,7 @@ select * from src
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 POSTHOOK: Output: default@bucket4_1
-OPTIMIZED SQL: SELECT `key`, `value`
+OPTIMIZED SQL: SELECT `key` AS `src.key`, `value` AS `src.value`
 FROM `default`.`src`
 STAGE DEPENDENCIES:
   Stage-1 is a root stage
diff --git a/ql/src/test/results/clientpositive/llap/bucket_many.q.out b/ql/src/test/results/clientpositive/llap/bucket_many.q.out
index 8ce661c4a2b..895ee70cafa 100644
--- a/ql/src/test/results/clientpositive/llap/bucket_many.q.out
+++ b/ql/src/test/results/clientpositive/llap/bucket_many.q.out
@@ -18,7 +18,7 @@ select * from src
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 POSTHOOK: Output: default@bucket_many
-OPTIMIZED SQL: SELECT `key`, `value`
+OPTIMIZED SQL: SELECT `key` AS `src.key`, `value` AS `src.value`
 FROM `default`.`src`
 STAGE DEPENDENCIES:
   Stage-1 is a root stage
diff --git a/ql/src/test/results/clientpositive/llap/bucket_map_join_tez2.q.out b/ql/src/test/results/clientpositive/llap/bucket_map_join_tez2.q.out
index 1cd945de8d8..2c3ff1e4d7d 100644
--- a/ql/src/test/results/clientpositive/llap/bucket_map_join_tez2.q.out
+++ b/ql/src/test/results/clientpositive/llap/bucket_map_join_tez2.q.out
@@ -2346,7 +2346,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@my_dim
 POSTHOOK: Input: default@my_fact
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`bucket_col`, `t2`.`join_col` AS `account1`, `t0`.`accounting_period`
+OPTIMIZED SQL: SELECT `t0`.`bucket_col`, `t2`.`join_col` AS `account1`, `t0`.`accounting_period` AS `my_fact.accounting_period`
 FROM (SELECT `bucket_col`, `join_col`, `accounting_period`
 FROM `default`.`my_fact`
 WHERE `fiscal_year` = '2015' AND `accounting_period` = 10 AND `join_col` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/bucket_map_join_tez3.q.out b/ql/src/test/results/clientpositive/llap/bucket_map_join_tez3.q.out
index 6b92ef7ad48..270f527e890 100644
--- a/ql/src/test/results/clientpositive/llap/bucket_map_join_tez3.q.out
+++ b/ql/src/test/results/clientpositive/llap/bucket_map_join_tez3.q.out
@@ -106,7 +106,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@source_table
 POSTHOOK: Input: default@target_table
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`date_col`, CAST('pipeline' AS STRING) AS `string_col`, `t0`.`decimal_col`, `t2`.`date_col` AS `date_col1`, 'pipeline' AS `string_col1`, `t2`.`decimal_col` AS `decimal_col1`
+OPTIMIZED SQL: SELECT `t0`.`date_col` AS `target_table.date_col`, CAST('pipeline' AS STRING) AS `target_table.string_col`, `t0`.`decimal_col` AS `target_table.decimal_col`, `t2`.`date_col` AS `s.date_col`, 'pipeline' AS `s.string_col`, `t2`.`decimal_col` AS `s.decimal_col`
 FROM (SELECT `date_col`, `decimal_col`
 FROM `default`.`target_table`
 WHERE 'pipeline' = `string_col` AND CASE WHEN `decimal_col` IS NOT NULL THEN CAST(`decimal_col` AS STRING) = '50000000000000000005905545593' ELSE FALSE END AND `date_col` IS NOT NULL AND `decimal_col` IS NOT NULL) AS `t0`
@@ -333,7 +333,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@source_table
 POSTHOOK: Input: default@target_table
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`date_col`, CAST('pipeline' AS STRING) AS `string_col`, `t0`.`decimal_col`, `t3`.`date_col` AS `date_col1`, 'pipeline' AS `string_col1`, `t3`.`decimal_col` AS `decimal_col1`
+OPTIMIZED SQL: SELECT `t0`.`date_col` AS `target_table.date_col`, CAST('pipeline' AS STRING) AS `target_table.string_col`, `t0`.`decimal_col` AS `target_table.decimal_col`, `t3`.`date_col` AS `s.date_col`, 'pipeline' AS `s.string_col`, `t3`.`decimal_col` AS `s.decimal_col`
 FROM (SELECT `date_col`, `decimal_col`
 FROM `default`.`target_table`
 WHERE 'pipeline' = `string_col` AND CASE WHEN `decimal_col` IS NOT NULL THEN CAST(`decimal_col` AS STRING) = '50000000000000000005905545593' ELSE FALSE END AND `date_col` IS NOT NULL AND `decimal_col` IS NOT NULL) AS `t0`
@@ -583,7 +583,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@source_table
 POSTHOOK: Input: default@target_table
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`date_col`, CAST('pipeline' AS STRING) AS `string_col`, `t0`.`decimal_col`, `t2`.`date_col` AS `date_col1`, 'pipeline' AS `string_col1`, `t2`.`decimal_col` AS `decimal_col1`
+OPTIMIZED SQL: SELECT `t0`.`date_col` AS `target_table.date_col`, CAST('pipeline' AS STRING) AS `target_table.string_col`, `t0`.`decimal_col` AS `target_table.decimal_col`, `t2`.`date_col` AS `s.date_col`, 'pipeline' AS `s.string_col`, `t2`.`decimal_col` AS `s.decimal_col`
 FROM (SELECT `date_col`, `decimal_col`
 FROM `default`.`target_table`
 WHERE 'pipeline' = `string_col` AND CASE WHEN `decimal_col` IS NOT NULL THEN CAST(`decimal_col` AS STRING) = '50000000000000000005905545593' ELSE FALSE END AND `date_col` IS NOT NULL AND `decimal_col` IS NOT NULL) AS `t0`
@@ -809,7 +809,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@source_table
 POSTHOOK: Input: default@target_table
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`date_col`, CAST('pipeline' AS STRING) AS `string_col`, `t0`.`decimal_col`, `t3`.`date_col` AS `date_col1`, 'pipeline' AS `string_col1`, `t3`.`decimal_col` AS `decimal_col1`
+OPTIMIZED SQL: SELECT `t0`.`date_col` AS `target_table.date_col`, CAST('pipeline' AS STRING) AS `target_table.string_col`, `t0`.`decimal_col` AS `target_table.decimal_col`, `t3`.`date_col` AS `s.date_col`, 'pipeline' AS `s.string_col`, `t3`.`decimal_col` AS `s.decimal_col`
 FROM (SELECT `date_col`, `decimal_col`
 FROM `default`.`target_table`
 WHERE 'pipeline' = `string_col` AND CASE WHEN `decimal_col` IS NOT NULL THEN CAST(`decimal_col` AS STRING) = '50000000000000000005905545593' ELSE FALSE END AND `date_col` IS NOT NULL AND `decimal_col` IS NOT NULL) AS `t0`
@@ -1058,7 +1058,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@source_table
 POSTHOOK: Input: default@target_table
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`date_col`, CAST('pipeline' AS STRING) AS `string_col`, `t0`.`decimal_col`, `t2`.`date_col` AS `date_col1`, 'pipeline' AS `string_col1`, `t2`.`decimal_col` AS `decimal_col1`
+OPTIMIZED SQL: SELECT `t0`.`date_col` AS `target_table.date_col`, CAST('pipeline' AS STRING) AS `target_table.string_col`, `t0`.`decimal_col` AS `target_table.decimal_col`, `t2`.`date_col` AS `s.date_col`, 'pipeline' AS `s.string_col`, `t2`.`decimal_col` AS `s.decimal_col`
 FROM (SELECT `date_col`, `decimal_col`
 FROM `default`.`target_table`
 WHERE 'pipeline' = `string_col` AND CASE WHEN `decimal_col` IS NOT NULL THEN CAST(`decimal_col` AS STRING) = '50000000000000000005905545593' ELSE FALSE END AND `date_col` IS NOT NULL AND `decimal_col` IS NOT NULL) AS `t0`
@@ -1285,7 +1285,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@source_table
 POSTHOOK: Input: default@target_table
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`date_col`, CAST('pipeline' AS STRING) AS `string_col`, `t0`.`decimal_col`, `t3`.`date_col` AS `date_col1`, 'pipeline' AS `string_col1`, `t3`.`decimal_col` AS `decimal_col1`
+OPTIMIZED SQL: SELECT `t0`.`date_col` AS `target_table.date_col`, CAST('pipeline' AS STRING) AS `target_table.string_col`, `t0`.`decimal_col` AS `target_table.decimal_col`, `t3`.`date_col` AS `s.date_col`, 'pipeline' AS `s.string_col`, `t3`.`decimal_col` AS `s.decimal_col`
 FROM (SELECT `date_col`, `decimal_col`
 FROM `default`.`target_table`
 WHERE 'pipeline' = `string_col` AND CASE WHEN `decimal_col` IS NOT NULL THEN CAST(`decimal_col` AS STRING) = '50000000000000000005905545593' ELSE FALSE END AND `date_col` IS NOT NULL AND `decimal_col` IS NOT NULL) AS `t0`
@@ -1535,7 +1535,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@source_table
 POSTHOOK: Input: default@target_table
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`date_col`, CAST('pipeline' AS STRING) AS `string_col`, `t0`.`decimal_col`, `t2`.`date_col` AS `date_col1`, 'pipeline' AS `string_col1`, `t2`.`decimal_col` AS `decimal_col1`
+OPTIMIZED SQL: SELECT `t0`.`date_col` AS `target_table.date_col`, CAST('pipeline' AS STRING) AS `target_table.string_col`, `t0`.`decimal_col` AS `target_table.decimal_col`, `t2`.`date_col` AS `s.date_col`, 'pipeline' AS `s.string_col`, `t2`.`decimal_col` AS `s.decimal_col`
 FROM (SELECT `date_col`, `decimal_col`
 FROM `default`.`target_table`
 WHERE 'pipeline' = `string_col` AND CASE WHEN `decimal_col` IS NOT NULL THEN CAST(`decimal_col` AS STRING) = '50000000000000000005905545593' ELSE FALSE END AND `date_col` IS NOT NULL AND `decimal_col` IS NOT NULL) AS `t0`
@@ -1761,7 +1761,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@source_table
 POSTHOOK: Input: default@target_table
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`date_col`, CAST('pipeline' AS STRING) AS `string_col`, `t0`.`decimal_col`, `t3`.`date_col` AS `date_col1`, 'pipeline' AS `string_col1`, `t3`.`decimal_col` AS `decimal_col1`
+OPTIMIZED SQL: SELECT `t0`.`date_col` AS `target_table.date_col`, CAST('pipeline' AS STRING) AS `target_table.string_col`, `t0`.`decimal_col` AS `target_table.decimal_col`, `t3`.`date_col` AS `s.date_col`, 'pipeline' AS `s.string_col`, `t3`.`decimal_col` AS `s.decimal_col`
 FROM (SELECT `date_col`, `decimal_col`
 FROM `default`.`target_table`
 WHERE 'pipeline' = `string_col` AND CASE WHEN `decimal_col` IS NOT NULL THEN CAST(`decimal_col` AS STRING) = '50000000000000000005905545593' ELSE FALSE END AND `date_col` IS NOT NULL AND `decimal_col` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/bucket_num_reducers.q.out b/ql/src/test/results/clientpositive/llap/bucket_num_reducers.q.out
index f72d928c29a..643b31a878f 100644
--- a/ql/src/test/results/clientpositive/llap/bucket_num_reducers.q.out
+++ b/ql/src/test/results/clientpositive/llap/bucket_num_reducers.q.out
@@ -16,7 +16,7 @@ POSTHOOK: query: explain extended insert overwrite table bucket_nr
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 POSTHOOK: Output: default@bucket_nr
-OPTIMIZED SQL: SELECT `key`, `value`
+OPTIMIZED SQL: SELECT `key` AS `src.key`, `value` AS `src.value`
 FROM `default`.`src`
 STAGE DEPENDENCIES:
   Stage-1 is a root stage
diff --git a/ql/src/test/results/clientpositive/llap/bucket_num_reducers2.q.out b/ql/src/test/results/clientpositive/llap/bucket_num_reducers2.q.out
index cddbe15dd20..69c316d2e52 100644
--- a/ql/src/test/results/clientpositive/llap/bucket_num_reducers2.q.out
+++ b/ql/src/test/results/clientpositive/llap/bucket_num_reducers2.q.out
@@ -16,7 +16,7 @@ POSTHOOK: query: explain extended insert overwrite table test_table_n4
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 POSTHOOK: Output: default@test_table_n4
-OPTIMIZED SQL: SELECT `key`, `value`
+OPTIMIZED SQL: SELECT `key` AS `src.key`, `value` AS `src.value`
 FROM `default`.`src`
 STAGE DEPENDENCIES:
   Stage-1 is a root stage
diff --git a/ql/src/test/results/clientpositive/llap/bucketmapjoin1.q.out b/ql/src/test/results/clientpositive/llap/bucketmapjoin1.q.out
index b18f756215d..2c69227f47e 100644
--- a/ql/src/test/results/clientpositive/llap/bucketmapjoin1.q.out
+++ b/ql/src/test/results/clientpositive/llap/bucketmapjoin1.q.out
@@ -38,7 +38,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_mapjoin_part_2_n1
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n1
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, `t2`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`srcbucket_mapjoin_part_n1`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -191,7 +191,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_mapjoin_part_2_n1
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n1
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, `t2`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`srcbucket_mapjoin_part_n1`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -438,7 +438,7 @@ POSTHOOK: Input: default@srcbucket_mapjoin_n1
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n1
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n1@ds=2008-04-08
 POSTHOOK: Output: default@bucketmapjoin_tmp_result_n0
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, `t2`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`srcbucket_mapjoin_n1`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -856,7 +856,7 @@ POSTHOOK: Input: default@srcbucket_mapjoin_n1
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n1
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n1@ds=2008-04-08
 POSTHOOK: Output: default@bucketmapjoin_tmp_result_n0
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, `t2`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`srcbucket_mapjoin_n1`
 WHERE `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/bucketmapjoin2.q.out b/ql/src/test/results/clientpositive/llap/bucketmapjoin2.q.out
index 5146c04f74e..86f0c3248dd 100644
--- a/ql/src/test/results/clientpositive/llap/bucketmapjoin2.q.out
+++ b/ql/src/test/results/clientpositive/llap/bucketmapjoin2.q.out
@@ -110,7 +110,7 @@ POSTHOOK: Input: default@srcbucket_mapjoin_part_2_n5@ds=2008-04-08
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n6
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n6@ds=2008-04-08
 POSTHOOK: Output: default@bucketmapjoin_tmp_result_n2
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, `t2`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`srcbucket_mapjoin_part_n6`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -539,7 +539,7 @@ POSTHOOK: Input: default@srcbucket_mapjoin_part_2_n5@ds=2008-04-08
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n6
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n6@ds=2008-04-08
 POSTHOOK: Output: default@bucketmapjoin_tmp_result_n2
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, `t2`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`srcbucket_mapjoin_part_n6`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -987,7 +987,7 @@ POSTHOOK: Input: default@srcbucket_mapjoin_part_2_n5@ds=2008-04-09
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n6
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n6@ds=2008-04-08
 POSTHOOK: Output: default@bucketmapjoin_tmp_result_n2
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, `t2`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`srcbucket_mapjoin_part_n6`
 WHERE `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/bucketmapjoin3.q.out b/ql/src/test/results/clientpositive/llap/bucketmapjoin3.q.out
index 6e87cc9ffdb..8d521515cf2 100644
--- a/ql/src/test/results/clientpositive/llap/bucketmapjoin3.q.out
+++ b/ql/src/test/results/clientpositive/llap/bucketmapjoin3.q.out
@@ -134,7 +134,7 @@ POSTHOOK: Input: default@srcbucket_mapjoin_part_2_n11@ds=2008-04-08
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n13
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n13@ds=2008-04-08
 POSTHOOK: Output: default@bucketmapjoin_tmp_result_n6
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, `t2`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`srcbucket_mapjoin_part_2_n11`
 WHERE `key` IS NOT NULL AND `ds` = '2008-04-08') AS `t0`
@@ -563,7 +563,7 @@ POSTHOOK: Input: default@srcbucket_mapjoin_part_2_n11@ds=2008-04-08
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n13
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n13@ds=2008-04-08
 POSTHOOK: Output: default@bucketmapjoin_tmp_result_n6
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, `t2`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`srcbucket_mapjoin_part_2_n11`
 WHERE `key` IS NOT NULL AND `ds` = '2008-04-08') AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/bucketmapjoin4.q.out b/ql/src/test/results/clientpositive/llap/bucketmapjoin4.q.out
index d319bd5e0b0..fc5f1ae9c4a 100644
--- a/ql/src/test/results/clientpositive/llap/bucketmapjoin4.q.out
+++ b/ql/src/test/results/clientpositive/llap/bucketmapjoin4.q.out
@@ -128,7 +128,7 @@ on a.key=b.key
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_mapjoin_n17
 POSTHOOK: Output: default@bucketmapjoin_tmp_result_n8
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, `t2`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`srcbucket_mapjoin_n17`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -529,7 +529,7 @@ on a.key=b.key
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_mapjoin_n17
 POSTHOOK: Output: default@bucketmapjoin_tmp_result_n8
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, `t2`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`srcbucket_mapjoin_n17`
 WHERE `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/bucketpruning1.q.out b/ql/src/test/results/clientpositive/llap/bucketpruning1.q.out
index 95ec3ae60d6..96bb3c218df 100644
--- a/ql/src/test/results/clientpositive/llap/bucketpruning1.q.out
+++ b/ql/src/test/results/clientpositive/llap/bucketpruning1.q.out
@@ -24,7 +24,7 @@ select * from srcbucket_pruned where key = 1 and value is not null
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_pruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST(1 AS INT) AS `key`, `value`, `ds`
+OPTIMIZED SQL: SELECT CAST(1 AS INT) AS `srcbucket_pruned.key`, `value` AS `srcbucket_pruned.value`, `ds` AS `srcbucket_pruned.ds`
 FROM `default`.`srcbucket_pruned`
 WHERE `key` = 1 AND `value` IS NOT NULL
 STAGE DEPENDENCIES:
@@ -95,7 +95,7 @@ select * from srcbucket_pruned where key = 1
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_pruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST(1 AS INT) AS `key`, `value`, `ds`
+OPTIMIZED SQL: SELECT CAST(1 AS INT) AS `srcbucket_pruned.key`, `value` AS `srcbucket_pruned.value`, `ds` AS `srcbucket_pruned.ds`
 FROM `default`.`srcbucket_pruned`
 WHERE `key` = 1
 STAGE DEPENDENCIES:
@@ -166,7 +166,7 @@ select * from srcbucket_pruned where key = 16
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_pruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST(16 AS INT) AS `key`, `value`, `ds`
+OPTIMIZED SQL: SELECT CAST(16 AS INT) AS `srcbucket_pruned.key`, `value` AS `srcbucket_pruned.value`, `ds` AS `srcbucket_pruned.ds`
 FROM `default`.`srcbucket_pruned`
 WHERE `key` = 16
 STAGE DEPENDENCIES:
@@ -237,7 +237,7 @@ select * from srcbucket_pruned where key = 17
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_pruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST(17 AS INT) AS `key`, `value`, `ds`
+OPTIMIZED SQL: SELECT CAST(17 AS INT) AS `srcbucket_pruned.key`, `value` AS `srcbucket_pruned.value`, `ds` AS `srcbucket_pruned.ds`
 FROM `default`.`srcbucket_pruned`
 WHERE `key` = 17
 STAGE DEPENDENCIES:
@@ -308,7 +308,7 @@ select * from srcbucket_pruned where key = 16+1
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_pruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST(17 AS INT) AS `key`, `value`, `ds`
+OPTIMIZED SQL: SELECT CAST(17 AS INT) AS `srcbucket_pruned.key`, `value` AS `srcbucket_pruned.value`, `ds` AS `srcbucket_pruned.ds`
 FROM `default`.`srcbucket_pruned`
 WHERE `key` = 17
 STAGE DEPENDENCIES:
@@ -379,7 +379,7 @@ select * from srcbucket_pruned where key = '11'
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_pruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST(11 AS INT) AS `key`, `value`, `ds`
+OPTIMIZED SQL: SELECT CAST(11 AS INT) AS `srcbucket_pruned.key`, `value` AS `srcbucket_pruned.value`, `ds` AS `srcbucket_pruned.ds`
 FROM `default`.`srcbucket_pruned`
 WHERE `key` = 11
 STAGE DEPENDENCIES:
@@ -450,7 +450,7 @@ select * from srcbucket_pruned where key = 1 and ds='2008-04-08'
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_pruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST(1 AS INT) AS `key`, `value`, CAST('2008-04-08' AS STRING) AS `ds`
+OPTIMIZED SQL: SELECT CAST(1 AS INT) AS `srcbucket_pruned.key`, `value` AS `srcbucket_pruned.value`, CAST('2008-04-08' AS STRING) AS `srcbucket_pruned.ds`
 FROM `default`.`srcbucket_pruned`
 WHERE `key` = 1 AND `ds` = '2008-04-08'
 STAGE DEPENDENCIES:
@@ -521,7 +521,7 @@ select * from srcbucket_pruned where key = 1 and ds='2008-04-08' and value='One'
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_pruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST(1 AS INT) AS `$f0`, CAST('One' AS STRING) AS `$f1`, CAST('2008-04-08' AS STRING) AS `$f2`
+OPTIMIZED SQL: SELECT CAST(1 AS INT) AS `srcbucket_pruned.key`, CAST('One' AS STRING) AS `srcbucket_pruned.value`, CAST('2008-04-08' AS STRING) AS `srcbucket_pruned.ds`
 FROM `default`.`srcbucket_pruned`
 WHERE `key` = 1 AND `ds` = '2008-04-08' AND `value` = 'One'
 STAGE DEPENDENCIES:
@@ -592,7 +592,7 @@ select * from srcbucket_pruned where value='One' and key = 1 and ds='2008-04-08'
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_pruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST(1 AS INT) AS `$f0`, CAST('One' AS STRING) AS `$f1`, CAST('2008-04-08' AS STRING) AS `$f2`
+OPTIMIZED SQL: SELECT CAST(1 AS INT) AS `srcbucket_pruned.key`, CAST('One' AS STRING) AS `srcbucket_pruned.value`, CAST('2008-04-08' AS STRING) AS `srcbucket_pruned.ds`
 FROM `default`.`srcbucket_pruned`
 WHERE `value` = 'One' AND `key` = 1 AND `ds` = '2008-04-08'
 STAGE DEPENDENCIES:
@@ -663,7 +663,7 @@ select * from srcbucket_pruned where key in (2,3)
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_pruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, `value`, `ds`
+OPTIMIZED SQL: SELECT `key` AS `srcbucket_pruned.key`, `value` AS `srcbucket_pruned.value`, `ds` AS `srcbucket_pruned.ds`
 FROM `default`.`srcbucket_pruned`
 WHERE `key` IN (2, 3)
 STAGE DEPENDENCIES:
@@ -734,7 +734,7 @@ select * from srcbucket_pruned where key in (2,3) and ds='2008-04-08'
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_pruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, `value`, CAST('2008-04-08' AS STRING) AS `ds`
+OPTIMIZED SQL: SELECT `key` AS `srcbucket_pruned.key`, `value` AS `srcbucket_pruned.value`, CAST('2008-04-08' AS STRING) AS `srcbucket_pruned.ds`
 FROM `default`.`srcbucket_pruned`
 WHERE `key` IN (2, 3) AND `ds` = '2008-04-08'
 STAGE DEPENDENCIES:
@@ -805,7 +805,7 @@ select * from srcbucket_pruned where key in (2,3) and ds='2008-04-08' and value=
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_pruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, CAST('One' AS STRING) AS `value`, CAST('2008-04-08' AS STRING) AS `ds`
+OPTIMIZED SQL: SELECT `key` AS `srcbucket_pruned.key`, CAST('One' AS STRING) AS `srcbucket_pruned.value`, CAST('2008-04-08' AS STRING) AS `srcbucket_pruned.ds`
 FROM `default`.`srcbucket_pruned`
 WHERE `key` IN (2, 3) AND `ds` = '2008-04-08' AND `value` = 'One'
 STAGE DEPENDENCIES:
@@ -876,7 +876,7 @@ select * from srcbucket_pruned where value='One' and key in (2,3) and ds='2008-0
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_pruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, CAST('One' AS STRING) AS `value`, CAST('2008-04-08' AS STRING) AS `ds`
+OPTIMIZED SQL: SELECT `key` AS `srcbucket_pruned.key`, CAST('One' AS STRING) AS `srcbucket_pruned.value`, CAST('2008-04-08' AS STRING) AS `srcbucket_pruned.ds`
 FROM `default`.`srcbucket_pruned`
 WHERE `value` = 'One' AND `key` IN (2, 3) AND `ds` = '2008-04-08'
 STAGE DEPENDENCIES:
@@ -947,7 +947,7 @@ select * from srcbucket_pruned where (key=1 or key=2) and ds='2008-04-08'
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_pruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, `value`, CAST('2008-04-08' AS STRING) AS `ds`
+OPTIMIZED SQL: SELECT `key` AS `srcbucket_pruned.key`, `value` AS `srcbucket_pruned.value`, CAST('2008-04-08' AS STRING) AS `srcbucket_pruned.ds`
 FROM `default`.`srcbucket_pruned`
 WHERE `key` IN (1, 2) AND `ds` = '2008-04-08'
 STAGE DEPENDENCIES:
@@ -1018,7 +1018,7 @@ select * from srcbucket_pruned where (key=1 or key=2) and value = 'One' and ds='
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_pruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, CAST('One' AS STRING) AS `value`, CAST('2008-04-08' AS STRING) AS `ds`
+OPTIMIZED SQL: SELECT `key` AS `srcbucket_pruned.key`, CAST('One' AS STRING) AS `srcbucket_pruned.value`, CAST('2008-04-08' AS STRING) AS `srcbucket_pruned.ds`
 FROM `default`.`srcbucket_pruned`
 WHERE `key` IN (1, 2) AND `value` = 'One' AND `ds` = '2008-04-08'
 STAGE DEPENDENCIES:
@@ -1089,7 +1089,7 @@ select * from srcbucket_pruned where key = -15
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_pruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST(-15 AS INT) AS `key`, `value`, `ds`
+OPTIMIZED SQL: SELECT CAST(-15 AS INT) AS `srcbucket_pruned.key`, `value` AS `srcbucket_pruned.value`, `ds` AS `srcbucket_pruned.ds`
 FROM `default`.`srcbucket_pruned`
 WHERE `key` = -15
 STAGE DEPENDENCIES:
@@ -1160,7 +1160,7 @@ select * from srcbucket_pruned where key in (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_pruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, `value`, `ds`
+OPTIMIZED SQL: SELECT `key` AS `srcbucket_pruned.key`, `value` AS `srcbucket_pruned.value`, `ds` AS `srcbucket_pruned.ds`
 FROM `default`.`srcbucket_pruned`
 WHERE `key` IN (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
 STAGE DEPENDENCIES:
@@ -1231,7 +1231,7 @@ select * from srcbucket_pruned where key in (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_pruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, `value`, CAST('2008-04-08' AS STRING) AS `ds`
+OPTIMIZED SQL: SELECT `key` AS `srcbucket_pruned.key`, `value` AS `srcbucket_pruned.value`, CAST('2008-04-08' AS STRING) AS `srcbucket_pruned.ds`
 FROM `default`.`srcbucket_pruned`
 WHERE `key` IN (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17) AND `ds` = '2008-04-08'
 STAGE DEPENDENCIES:
@@ -1302,7 +1302,7 @@ select * from srcbucket_pruned where key in (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_pruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, CAST('One' AS STRING) AS `value`, CAST('2008-04-08' AS STRING) AS `ds`
+OPTIMIZED SQL: SELECT `key` AS `srcbucket_pruned.key`, CAST('One' AS STRING) AS `srcbucket_pruned.value`, CAST('2008-04-08' AS STRING) AS `srcbucket_pruned.ds`
 FROM `default`.`srcbucket_pruned`
 WHERE `key` IN (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17) AND `ds` = '2008-04-08' AND `value` = 'One'
 STAGE DEPENDENCIES:
@@ -1373,7 +1373,7 @@ select * from srcbucket_pruned where value='One' and key in (1,2,3,4,5,6,7,8,9,1
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_pruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, CAST('One' AS STRING) AS `value`, CAST('2008-04-08' AS STRING) AS `ds`
+OPTIMIZED SQL: SELECT `key` AS `srcbucket_pruned.key`, CAST('One' AS STRING) AS `srcbucket_pruned.value`, CAST('2008-04-08' AS STRING) AS `srcbucket_pruned.ds`
 FROM `default`.`srcbucket_pruned`
 WHERE `value` = 'One' AND `key` IN (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17) AND `ds` = '2008-04-08'
 STAGE DEPENDENCIES:
@@ -1444,7 +1444,7 @@ select * from srcbucket_pruned where key = 1 and ds='2008-04-08' or key = 2
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_pruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, `value`, `ds`
+OPTIMIZED SQL: SELECT `key` AS `srcbucket_pruned.key`, `value` AS `srcbucket_pruned.value`, `ds` AS `srcbucket_pruned.ds`
 FROM `default`.`srcbucket_pruned`
 WHERE `key` = 2 OR `key` = 1 AND `ds` = '2008-04-08'
 STAGE DEPENDENCIES:
@@ -1514,7 +1514,7 @@ select * from srcbucket_pruned where key = 1 and ds='2008-04-08' and (value='One
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_pruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST(1 AS INT) AS `key`, `value`, CAST('2008-04-08' AS STRING) AS `ds`
+OPTIMIZED SQL: SELECT CAST(1 AS INT) AS `srcbucket_pruned.key`, `value` AS `srcbucket_pruned.value`, CAST('2008-04-08' AS STRING) AS `srcbucket_pruned.ds`
 FROM `default`.`srcbucket_pruned`
 WHERE `key` = 1 AND `ds` = '2008-04-08' AND `value` IN ('One', 'Two')
 STAGE DEPENDENCIES:
@@ -1585,7 +1585,7 @@ select * from srcbucket_pruned where key = 1 or value = "One" or key = 2 and val
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_pruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, `value`, `ds`
+OPTIMIZED SQL: SELECT `key` AS `srcbucket_pruned.key`, `value` AS `srcbucket_pruned.value`, `ds` AS `srcbucket_pruned.ds`
 FROM `default`.`srcbucket_pruned`
 WHERE `key` = 1 OR `value` = 'One' OR `key` = 2 AND `value` = 'Two'
 STAGE DEPENDENCIES:
@@ -1656,7 +1656,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_pruned
 #### A masked pattern was here ####
 OPTIMIZED SQL: SELECT *
-FROM (SELECT NULL AS `key`, NULL AS `value`, NULL AS `ds`) AS `t`
+FROM (SELECT NULL AS `srcbucket_pruned.key`, NULL AS `srcbucket_pruned.value`, NULL AS `srcbucket_pruned.ds`) AS `t`
 WHERE 1 = 0
 STAGE DEPENDENCIES:
   Stage-0 is a root stage
@@ -1678,7 +1678,7 @@ select * from srcbucket_pruned where key = 1 or value = "One"
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_pruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, `value`, `ds`
+OPTIMIZED SQL: SELECT `key` AS `srcbucket_pruned.key`, `value` AS `srcbucket_pruned.value`, `ds` AS `srcbucket_pruned.ds`
 FROM `default`.`srcbucket_pruned`
 WHERE `key` = 1 OR `value` = 'One'
 STAGE DEPENDENCIES:
@@ -1748,7 +1748,7 @@ select * from srcbucket_pruned where key = 1 or value = "One" or key = 2
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_pruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, `value`, `ds`
+OPTIMIZED SQL: SELECT `key` AS `srcbucket_pruned.key`, `value` AS `srcbucket_pruned.value`, `ds` AS `srcbucket_pruned.ds`
 FROM `default`.`srcbucket_pruned`
 WHERE `key` IN (1, 2) OR `value` = 'One'
 STAGE DEPENDENCIES:
@@ -1818,7 +1818,7 @@ select * from srcbucket_unpruned where key in (3, 5)
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_unpruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, `value`, `ds`
+OPTIMIZED SQL: SELECT `key` AS `srcbucket_unpruned.key`, `value` AS `srcbucket_unpruned.value`, `ds` AS `srcbucket_unpruned.ds`
 FROM `default`.`srcbucket_unpruned`
 WHERE `key` IN (3, 5)
 STAGE DEPENDENCIES:
@@ -1888,7 +1888,7 @@ select * from srcbucket_unpruned where key = 1
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcbucket_unpruned
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST(1 AS INT) AS `key`, `value`, `ds`
+OPTIMIZED SQL: SELECT CAST(1 AS INT) AS `srcbucket_unpruned.key`, `value` AS `srcbucket_unpruned.value`, `ds` AS `srcbucket_unpruned.ds`
 FROM `default`.`srcbucket_unpruned`
 WHERE `key` = 1
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/cardinality_preserving_join_opt.q.out b/ql/src/test/results/clientpositive/llap/cardinality_preserving_join_opt.q.out
index d04a42c5f65..46ef1ef6f75 100644
--- a/ql/src/test/results/clientpositive/llap/cardinality_preserving_join_opt.q.out
+++ b/ql/src/test/results/clientpositive/llap/cardinality_preserving_join_opt.q.out
@@ -86,7 +86,7 @@ POSTHOOK: Input: default@customer
 POSTHOOK: Input: default@store_sales
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(c_first_name=[$3], _o__c1=[$5], _o__c2=[*($1, $6)], c_customer_sk=[$4], ss_customer_sk=[$0])
+HiveProject(c_first_name=[$3], _c1=[$5], _c2=[*($1, $6)], c_customer_sk=[$4], ss_customer_sk=[$0])
   HiveJoin(condition=[=($2, $4)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(ss_customer_sk=[$1], EXPR$0=[*(+($0, $0), $2)], EXPR$1=[CAST($1):BIGINT])
       HiveFilter(condition=[IS NOT NULL(CAST($1):BIGINT)])
@@ -155,7 +155,7 @@ POSTHOOK: Input: default@customer
 POSTHOOK: Input: default@store_sales
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(c_first_name=[$2], _o__c1=[$4], _o__c2=[*(*(+($6, $6), $8), $5)], c_customer_sk=[$3], ss_customer_sk=[$0])
+HiveProject(c_first_name=[$2], _c1=[$4], _c2=[*(*(+($6, $6), $8), $5)], c_customer_sk=[$3], ss_customer_sk=[$0])
   HiveJoin(condition=[=($0, $7)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveJoin(condition=[=($1, $3)], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject(ss_customer_sk=[$0], EXPR$1=[CAST($0):BIGINT])
@@ -237,7 +237,7 @@ POSTHOOK: Input: default@customer
 POSTHOOK: Input: default@store_sales
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(c_first_name=[$4], _o__c1=[||(||(||(||($4, _UTF-16LE' ':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"), $5), _UTF-16LE' ':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"), $5)], _o__c2=[*($1, -(1, $7))], c_customer_sk=[$3], ss_customer_sk=[$0])
+HiveProject(c_first_name=[$4], _c1=[||(||(||(||($4, _UTF-16LE' ':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"), $5), _UTF-16LE' ':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"), $5)], _c2=[*($1, -(1, $7))], c_customer_sk=[$3], ss_customer_sk=[$0])
   HiveJoin(condition=[=($3, $6)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveJoin(condition=[=($2, $3)], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject(ss_customer_sk=[$1], EXPR$0=[*(+($0, $0), $2)], EXPR$1=[CAST($1):BIGINT])
@@ -309,7 +309,7 @@ POSTHOOK: Input: default@customer
 POSTHOOK: Input: default@store_sales
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(c_first_name=[$6], _o__c1=[||(||(||(||($6, _UTF-16LE' ':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"), $7), _UTF-16LE' ':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"), $7)], _o__c2=[*(*(+($3, $3), $5), -(1, $9))], c_customer_sk=[$2], ss_customer_sk=[$0])
+HiveProject(c_first_name=[$6], _c1=[||(||(||(||($6, _UTF-16LE' ':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"), $7), _UTF-16LE' ':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"), $7)], _c2=[*(*(+($3, $3), $5), -(1, $9))], c_customer_sk=[$2], ss_customer_sk=[$0])
   HiveJoin(condition=[=($2, $8)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveJoin(condition=[=($0, $4)], joinType=[inner], algorithm=[none], cost=[not available])
       HiveJoin(condition=[=($1, $2)], joinType=[inner], algorithm=[none], cost=[not available])
diff --git a/ql/src/test/results/clientpositive/llap/cardinality_preserving_join_opt2.q.out b/ql/src/test/results/clientpositive/llap/cardinality_preserving_join_opt2.q.out
index de84f470d26..2d9d2df22a2 100644
--- a/ql/src/test/results/clientpositive/llap/cardinality_preserving_join_opt2.q.out
+++ b/ql/src/test/results/clientpositive/llap/cardinality_preserving_join_opt2.q.out
@@ -218,7 +218,7 @@ POSTHOOK: Input: mydb_e10@f2_tab_e10
 POSTHOOK: Input: mydb_e10@f_tab_e10
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(c1=[$11], c5=[$13], c6=[$14], c3=[$1], c4=[$2], c51=[$3], c61=[$4], c7=[$5], c8=[$6], c9=[$7], c10=[$8], c11=[$9], c12=[$19], c41=[$21], c52=[$22], c2=[$18])
+HiveProject(c.c1=[$11], c.c5=[$13], c.c6=[$14], ca.c3=[$1], ca.c4=[$2], ca.c5=[$3], ca.c6=[$4], ca.c7=[$5], ca.c8=[$6], ca.c9=[$7], ca.c10=[$8], ca.c11=[$9], cm.c1=[$19], cm.c4=[$21], cm.c5=[$22], r.c2=[$18])
   HiveJoin(condition=[=($11, $20)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveJoin(condition=[=($12, $0)], joinType=[inner], algorithm=[none], cost=[not available])
       HiveJoin(condition=[true], joinType=[inner], algorithm=[none], cost=[not available])
diff --git a/ql/src/test/results/clientpositive/llap/cast_null_to_complex.q.out b/ql/src/test/results/clientpositive/llap/cast_null_to_complex.q.out
index a38a3a43e05..02bc39764a4 100644
--- a/ql/src/test/results/clientpositive/llap/cast_null_to_complex.q.out
+++ b/ql/src/test/results/clientpositive/llap/cast_null_to_complex.q.out
@@ -10,7 +10,7 @@ POSTHOOK: Input: _dummy_database@_dummy_table
 #### A masked pattern was here ####
 Explain
 CBO PLAN:
-HiveProject(_o__c0=[null:(INTEGER, VARCHAR(2147483647) CHARACTER SET "UTF-16LE") MAP], _o__c1=[null:(INTEGER, VARCHAR(2147483647) CHARACTER SET "UTF-16LE") MAP ARRAY], _o__c2=[null:INTEGER], _o__c3=[null:RecordType((INTEGER, VARCHAR(2147483647) CHARACTER SET "UTF-16LE") MAP ARRAY f1, RecordType(DOUBLE a, VARCHAR(2147483647) CHARACTER SET "UTF-16LE" b) f2)])
+HiveProject(_c0=[null:(INTEGER, VARCHAR(2147483647) CHARACTER SET "UTF-16LE") MAP], _c1=[null:(INTEGER, VARCHAR(2147483647) CHARACTER SET "UTF-16LE") MAP ARRAY], _c2=[null:INTEGER], _c3=[null:RecordType((INTEGER, VARCHAR(2147483647) CHARACTER SET "UTF-16LE") MAP ARRAY f1, RecordType(DOUBLE a, VARCHAR(2147483647) CHARACTER SET "UTF-16LE" b) f2)])
   HiveTableScan(table=[[_dummy_database, _dummy_table]], table:alias=[_dummy_table])
 
 PREHOOK: query: explain
diff --git a/ql/src/test/results/clientpositive/llap/cbo_AggregateSortLimitRule.q.out b/ql/src/test/results/clientpositive/llap/cbo_AggregateSortLimitRule.q.out
index 1fd2ca5711b..e52b459a707 100644
--- a/ql/src/test/results/clientpositive/llap/cbo_AggregateSortLimitRule.q.out
+++ b/ql/src/test/results/clientpositive/llap/cbo_AggregateSortLimitRule.q.out
@@ -16,7 +16,7 @@ POSTHOOK: Input: default@person
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortLimit(sort0=[$1], dir0=[ASC-nulls-first], fetch=[5])
-  HiveProject(country=[$0], $f1=[$1])
+  HiveProject(country=[$0], _c1=[$1])
     HiveAggregate(group=[{1}], agg#0=[count()])
       HiveTableScan(table=[[default, person]], table:alias=[person])
 
@@ -30,7 +30,7 @@ POSTHOOK: Input: default@person
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortLimit(sort0=[$1], dir0=[ASC], fetch=[5])
-  HiveProject(country=[$0], $f1=[$1])
+  HiveProject(country=[$0], _c1=[$1])
     HiveAggregate(group=[{1}], agg#0=[count()])
       HiveTableScan(table=[[default, person]], table:alias=[person])
 
diff --git a/ql/src/test/results/clientpositive/llap/cbo_aggregate_reduce_functions_rule.q.out b/ql/src/test/results/clientpositive/llap/cbo_aggregate_reduce_functions_rule.q.out
index 280652d2423..ffd29645cfb 100644
--- a/ql/src/test/results/clientpositive/llap/cbo_aggregate_reduce_functions_rule.q.out
+++ b/ql/src/test/results/clientpositive/llap/cbo_aggregate_reduce_functions_rule.q.out
@@ -158,7 +158,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@test
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(_o__c0=[CAST(COALESCE($0, 0E0:DOUBLE)):DOUBLE], _o__c1=[CAST(COALESCE($1, 0E0:DOUBLE)):DOUBLE], _o__c2=[CAST(COALESCE($2, 0E0:DOUBLE)):DOUBLE], _o__c3=[CAST(COALESCE($3, 0E0:DOUBLE)):DOUBLE], _o__c4=[CAST(COALESCE($4, 0E0:DOUBLE)):DOUBLE], _o__c5=[CAST(COALESCE($5, 0E0:DOUBLE)):DOUBLE], _o__c6=[/($6, $7)], _o__c7=[/($1, $8)], _o__c8=[/($9, $10)], _o__c9=[/($3, $11)], _o__c10=[/($12, $13)], _o__c11=[/($5, $14)], _o__c12=[POWER(/(-($15, /(*($6, $6), $7)), $7), 0.5:DECIMAL(2, 1) [...]
+HiveProject(_c0=[CAST(COALESCE($0, 0E0:DOUBLE)):DOUBLE], _c1=[CAST(COALESCE($1, 0E0:DOUBLE)):DOUBLE], _c2=[CAST(COALESCE($2, 0E0:DOUBLE)):DOUBLE], _c3=[CAST(COALESCE($3, 0E0:DOUBLE)):DOUBLE], _c4=[CAST(COALESCE($4, 0E0:DOUBLE)):DOUBLE], _c5=[CAST(COALESCE($5, 0E0:DOUBLE)):DOUBLE], _c6=[/($6, $7)], _c7=[/($1, $8)], _c8=[/($9, $10)], _c9=[/($3, $11)], _c10=[/($12, $13)], _c11=[/($5, $14)], _c12=[POWER(/(-($15, /(*($6, $6), $7)), $7), 0.5:DECIMAL(2, 1))], _c13=[POWER(/(GREATEST(0, -($16, /( [...]
   HiveAggregate(group=[{}], agg#0=[sum($0)], agg#1=[sum($1)], agg#2=[sum($2)], agg#3=[sum($3)], agg#4=[sum($4)], agg#5=[sum($5)], agg#6=[sum($6)], agg#7=[count($6)], agg#8=[count($1)], agg#9=[sum($7)], agg#10=[count($7)], agg#11=[count($3)], agg#12=[sum($8)], agg#13=[count($8)], agg#14=[count($5)], agg#15=[sum($9)], agg#16=[sum($10)], agg#17=[sum($11)], agg#18=[sum($12)], agg#19=[sum($13)], agg#20=[sum($14)], agg#21=[count($0)], agg#22=[count($2)], agg#23=[count($4)])
     HiveProject($f0=[$0], $f1=[CAST($0):DOUBLE], $f2=[$1], $f3=[CAST($1):DOUBLE], $f4=[$2], $f5=[CAST($2):DOUBLE], $f00=[CAST($0):DOUBLE], $f20=[CAST($1):DOUBLE], $f40=[CAST($2):DOUBLE], $f9=[*(CAST($0):DOUBLE, CAST($0):DOUBLE)], $f10=[*(CAST($0):DOUBLE, CAST($0):DOUBLE)], $f11=[*(CAST($1):DOUBLE, CAST($1):DOUBLE)], $f12=[*(CAST($1):DOUBLE, CAST($1):DOUBLE)], $f13=[*(CAST($2):DOUBLE, CAST($2):DOUBLE)], $f14=[*(CAST($2):DOUBLE, CAST($2):DOUBLE)])
       HiveTableScan(table=[[default, test]], table:alias=[test])
diff --git a/ql/src/test/results/clientpositive/llap/cbo_case_when_wrong_type.q.out b/ql/src/test/results/clientpositive/llap/cbo_case_when_wrong_type.q.out
index dd485831c94..aa0c7986f90 100644
--- a/ql/src/test/results/clientpositive/llap/cbo_case_when_wrong_type.q.out
+++ b/ql/src/test/results/clientpositive/llap/cbo_case_when_wrong_type.q.out
@@ -55,7 +55,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject($f0=[1])
+HiveProject(_c0=[1])
   HiveFilter(condition=[IN($0, 1:SMALLINT, 2:SMALLINT)])
     HiveTableScan(table=[[default, t]], table:alias=[t])
 
@@ -78,7 +78,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject($f0=[1])
+HiveProject(_c0=[1])
   HiveFilter(condition=[IN($0, 1:SMALLINT, 2:SMALLINT)])
     HiveTableScan(table=[[default, t]], table:alias=[t])
 
diff --git a/ql/src/test/results/clientpositive/llap/cbo_constantfolding.q.out b/ql/src/test/results/clientpositive/llap/cbo_constantfolding.q.out
index 5e316937c46..43f257a806a 100644
--- a/ql/src/test/results/clientpositive/llap/cbo_constantfolding.q.out
+++ b/ql/src/test/results/clientpositive/llap/cbo_constantfolding.q.out
@@ -7,7 +7,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: _dummy_database@_dummy_table
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(_o__c0=[CAST(2023-01-02:DATE):DATE])
+HiveProject(_c0=[CAST(2023-01-02:DATE):DATE])
   HiveTableScan(table=[[_dummy_database, _dummy_table]], table:alias=[_dummy_table])
 
 PREHOOK: query: EXPLAIN CBO SELECT DATE_SUB('2023-01-01', 1)
@@ -19,7 +19,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: _dummy_database@_dummy_table
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(_o__c0=[CAST(2022-12-31:DATE):DATE])
+HiveProject(_c0=[CAST(2022-12-31:DATE):DATE])
   HiveTableScan(table=[[_dummy_database, _dummy_table]], table:alias=[_dummy_table])
 
 PREHOOK: query: EXPLAIN CBO SELECT FROM_UNIXTIME(1672560000)
@@ -31,7 +31,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: _dummy_database@_dummy_table
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(_o__c0=[CAST(_UTF-16LE'2023-01-01 00:00:00':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"):VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
+HiveProject(_c0=[CAST(_UTF-16LE'2023-01-01 00:00:00':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"):VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
   HiveTableScan(table=[[_dummy_database, _dummy_table]], table:alias=[_dummy_table])
 
 PREHOOK: query: EXPLAIN CBO SELECT TO_UNIX_TIMESTAMP(DATE '2023-01-01')
@@ -43,7 +43,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: _dummy_database@_dummy_table
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(_o__c0=[CAST(1672560000:BIGINT):BIGINT])
+HiveProject(_c0=[CAST(1672560000:BIGINT):BIGINT])
   HiveTableScan(table=[[_dummy_database, _dummy_table]], table:alias=[_dummy_table])
 
 PREHOOK: query: EXPLAIN CBO SELECT UNIX_TIMESTAMP(DATE '2023-01-01')
@@ -55,6 +55,6 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: _dummy_database@_dummy_table
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(_o__c0=[CAST(1672560000:BIGINT):BIGINT])
+HiveProject(_c0=[CAST(1672560000:BIGINT):BIGINT])
   HiveTableScan(table=[[_dummy_database, _dummy_table]], table:alias=[_dummy_table])
 
diff --git a/ql/src/test/results/clientpositive/llap/cbo_distribute_sort_cluster_by.q.out b/ql/src/test/results/clientpositive/llap/cbo_distribute_sort_cluster_by.q.out
index 60e22ff8a76..4c2865a70bc 100644
--- a/ql/src/test/results/clientpositive/llap/cbo_distribute_sort_cluster_by.q.out
+++ b/ql/src/test/results/clientpositive/llap/cbo_distribute_sort_cluster_by.q.out
@@ -18,7 +18,7 @@ POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortExchange(distribution=[hash[0]], collation=[[]])
-  HiveProject(a=[$0], b=[$1])
+  HiveProject(t1.a=[$0], t1.b=[$1])
     HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
 PREHOOK: query: explain
@@ -93,7 +93,7 @@ POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortExchange(distribution=[hash[0, 1]], collation=[[0]])
-  HiveProject(a=[$0], b=[$1])
+  HiveProject(t1.a=[$0], t1.b=[$1])
     HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
 PREHOOK: query: explain
@@ -169,7 +169,7 @@ POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortExchange(distribution=[hash[0, 1]], collation=[[0 ASC-nulls-first, 1 ASC-nulls-first]])
-  HiveProject(a=[$0], b=[$1])
+  HiveProject(t1.a=[$0], t1.b=[$1])
     HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
 PREHOOK: query: explain
diff --git a/ql/src/test/results/clientpositive/llap/cbo_distribute_sort_cluster_by_pos.q.out b/ql/src/test/results/clientpositive/llap/cbo_distribute_sort_cluster_by_pos.q.out
index bf6afbb0af9..a4d30ac89d9 100644
--- a/ql/src/test/results/clientpositive/llap/cbo_distribute_sort_cluster_by_pos.q.out
+++ b/ql/src/test/results/clientpositive/llap/cbo_distribute_sort_cluster_by_pos.q.out
@@ -18,7 +18,7 @@ POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortExchange(distribution=[hash[1]], collation=[[]])
-  HiveProject(a=[$0], b=[$1], c=[$2])
+  HiveProject(t1.a=[$0], t1.b=[$1], t1.c=[$2])
     HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
 PREHOOK: query: explain
@@ -93,7 +93,7 @@ POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortExchange(distribution=[hash[0, 1]], collation=[[1]])
-  HiveProject(a=[$0], b=[$1], c=[$2])
+  HiveProject(t1.a=[$0], t1.b=[$1], t1.c=[$2])
     HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
 PREHOOK: query: explain
@@ -169,7 +169,7 @@ POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortExchange(distribution=[hash[0, 1]], collation=[[0 ASC-nulls-first, 1 ASC-nulls-first]])
-  HiveProject(a=[$0], b=[$1], c=[$2])
+  HiveProject(t1.a=[$0], t1.b=[$1], t1.c=[$2])
     HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
 PREHOOK: query: explain
diff --git a/ql/src/test/results/clientpositive/llap/cbo_filter_proj_transpose_noinputref.q.out b/ql/src/test/results/clientpositive/llap/cbo_filter_proj_transpose_noinputref.q.out
index c3b9a11cc60..654f7b6d9a5 100644
--- a/ql/src/test/results/clientpositive/llap/cbo_filter_proj_transpose_noinputref.q.out
+++ b/ql/src/test/results/clientpositive/llap/cbo_filter_proj_transpose_noinputref.q.out
@@ -40,7 +40,7 @@ POSTHOOK: Input: default@test1
 POSTHOOK: Input: default@test2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(m=[CAST(_UTF-16LE'2':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"):VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
+HiveProject(c.m=[CAST(_UTF-16LE'2':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"):VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
   HiveJoin(condition=[true], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(DUMMY=[0])
       HiveTableScan(table=[[default, test1]], table:alias=[test1])
diff --git a/ql/src/test/results/clientpositive/llap/cbo_groupby_remove_key.q.out b/ql/src/test/results/clientpositive/llap/cbo_groupby_remove_key.q.out
index 1ff5e906c1d..0e5e8e1844d 100644
--- a/ql/src/test/results/clientpositive/llap/cbo_groupby_remove_key.q.out
+++ b/ql/src/test/results/clientpositive/llap/cbo_groupby_remove_key.q.out
@@ -33,8 +33,9 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@passenger
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{0}], agg#0=[count()])
-  HiveTableScan(table=[[default, passenger]], table:alias=[passenger])
+HiveProject(id=[$0], _c1=[$1])
+  HiveAggregate(group=[{0}], agg#0=[count()])
+    HiveTableScan(table=[[default, passenger]], table:alias=[passenger])
 
 PREHOOK: query: EXPLAIN CBO SELECT passport, COUNT(1) FROM passenger GROUP BY id, passport
 PREHOOK: type: QUERY
@@ -45,8 +46,9 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@passenger
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{3}], agg#0=[count()])
-  HiveTableScan(table=[[default, passenger]], table:alias=[passenger])
+HiveProject(passport=[$0], _c1=[$1])
+  HiveAggregate(group=[{3}], agg#0=[count()])
+    HiveTableScan(table=[[default, passenger]], table:alias=[passenger])
 
 PREHOOK: query: EXPLAIN CBO SELECT id, COUNT(1) FROM passenger GROUP BY id, fname, lname, passport
 PREHOOK: type: QUERY
@@ -57,8 +59,9 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@passenger
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{0}], agg#0=[count()])
-  HiveTableScan(table=[[default, passenger]], table:alias=[passenger])
+HiveProject(id=[$0], _c1=[$1])
+  HiveAggregate(group=[{0}], agg#0=[count()])
+    HiveTableScan(table=[[default, passenger]], table:alias=[passenger])
 
 PREHOOK: query: EXPLAIN CBO SELECT passport, COUNT(1) FROM passenger GROUP BY id, fname, lname, passport
 PREHOOK: type: QUERY
@@ -69,8 +72,9 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@passenger
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{3}], agg#0=[count()])
-  HiveTableScan(table=[[default, passenger]], table:alias=[passenger])
+HiveProject(passport=[$0], _c1=[$1])
+  HiveAggregate(group=[{3}], agg#0=[count()])
+    HiveTableScan(table=[[default, passenger]], table:alias=[passenger])
 
 PREHOOK: query: EXPLAIN CBO SELECT fname, COUNT(1) FROM passenger GROUP BY id, fname, lname, passport
 PREHOOK: type: QUERY
@@ -81,7 +85,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@passenger
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(fname=[$1], _o__c1=[$2])
+HiveProject(fname=[$1], _c1=[$2])
   HiveAggregate(group=[{0, 1}], agg#0=[count()])
     HiveTableScan(table=[[default, passenger]], table:alias=[passenger])
 
@@ -94,7 +98,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@passenger
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(lname=[$1], _o__c1=[$2])
+HiveProject(lname=[$1], _c1=[$2])
   HiveAggregate(group=[{0, 2}], agg#0=[count()])
     HiveTableScan(table=[[default, passenger]], table:alias=[passenger])
 
@@ -107,6 +111,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@passenger
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{1, 2}], agg#0=[count()])
-  HiveTableScan(table=[[default, passenger]], table:alias=[passenger])
+HiveProject(fname=[$0], lname=[$1], _c2=[$2])
+  HiveAggregate(group=[{1, 2}], agg#0=[count()])
+    HiveTableScan(table=[[default, passenger]], table:alias=[passenger])
 
diff --git a/ql/src/test/results/clientpositive/llap/cbo_jdbc_joincost.q.out b/ql/src/test/results/clientpositive/llap/cbo_jdbc_joincost.q.out
index 4ddb3c8745f..78279e58c3b 100644
--- a/ql/src/test/results/clientpositive/llap/cbo_jdbc_joincost.q.out
+++ b/ql/src/test/results/clientpositive/llap/cbo_jdbc_joincost.q.out
@@ -81,15 +81,17 @@ POSTHOOK: Input: default@author
 POSTHOOK: Input: default@book
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJdbcConverter(convention=[JDBC.MYSQL]): rowcount = ###Masked###, cumulative cost = ###Masked###, id = ###Masked###
-  JdbcProject(lname=[$1], title=[$2]): rowcount = ###Masked###, cumulative cost = ###Masked###, id = ###Masked###
-    JdbcJoin(condition=[=($0, $3)], joinType=[inner]): rowcount = ###Masked###, cumulative cost = ###Masked###, id = ###Masked###
-      JdbcProject(id=[$0], lname=[$1]): rowcount = ###Masked###, cumulative cost = ###Masked###, id = ###Masked###
-        JdbcFilter(condition=[IS NOT NULL($0)]): rowcount = ###Masked###, cumulative cost = ###Masked###, id = ###Masked###
-          JdbcProject(id=[$0], lname=[$2]): rowcount = ###Masked###, cumulative cost = ###Masked###, id = ###Masked###
-            JdbcHiveTableScan(table=[[default, author]], table:alias=[a]): rowcount = ###Masked###, cumulative cost = ###Masked###, id = ###Masked###
-      JdbcProject(title=[$0], author=[$1]): rowcount = ###Masked###, cumulative cost = ###Masked###, id = ###Masked###
-        JdbcFilter(condition=[IS NOT NULL($1)]): rowcount = ###Masked###, cumulative cost = ###Masked###, id = ###Masked###
-          JdbcProject(title=[$1], author=[$2]): rowcount = ###Masked###, cumulative cost = ###Masked###, id = ###Masked###
-            JdbcHiveTableScan(table=[[default, book]], table:alias=[b]): rowcount = ###Masked###, cumulative cost = ###Masked###, id = ###Masked###
+HiveProject(a.lname=[$0], b.title=[$1]): rowcount = ###Masked###, cumulative cost = ###Masked###, id = ###Masked###
+  HiveProject(lname=[$0], title=[$1]): rowcount = ###Masked###, cumulative cost = ###Masked###, id = ###Masked###
+    HiveJdbcConverter(convention=[JDBC.MYSQL]): rowcount = ###Masked###, cumulative cost = ###Masked###, id = ###Masked###
+      JdbcProject(lname=[$1], title=[$2]): rowcount = ###Masked###, cumulative cost = ###Masked###, id = ###Masked###
+        JdbcJoin(condition=[=($0, $3)], joinType=[inner]): rowcount = ###Masked###, cumulative cost = ###Masked###, id = ###Masked###
+          JdbcProject(id=[$0], lname=[$1]): rowcount = ###Masked###, cumulative cost = ###Masked###, id = ###Masked###
+            JdbcFilter(condition=[IS NOT NULL($0)]): rowcount = ###Masked###, cumulative cost = ###Masked###, id = ###Masked###
+              JdbcProject(id=[$0], lname=[$2]): rowcount = ###Masked###, cumulative cost = ###Masked###, id = ###Masked###
+                JdbcHiveTableScan(table=[[default, author]], table:alias=[a]): rowcount = ###Masked###, cumulative cost = ###Masked###, id = ###Masked###
+          JdbcProject(title=[$0], author=[$1]): rowcount = ###Masked###, cumulative cost = ###Masked###, id = ###Masked###
+            JdbcFilter(condition=[IS NOT NULL($1)]): rowcount = ###Masked###, cumulative cost = ###Masked###, id = ###Masked###
+              JdbcProject(title=[$1], author=[$2]): rowcount = ###Masked###, cumulative cost = ###Masked###, id = ###Masked###
+                JdbcHiveTableScan(table=[[default, book]], table:alias=[b]): rowcount = ###Masked###, cumulative cost = ###Masked###, id = ###Masked###
 
diff --git a/ql/src/test/results/clientpositive/llap/cbo_join_transitive_pred_loop_1.q.out b/ql/src/test/results/clientpositive/llap/cbo_join_transitive_pred_loop_1.q.out
index d0c75a7707a..83ea028c8ea 100644
--- a/ql/src/test/results/clientpositive/llap/cbo_join_transitive_pred_loop_1.q.out
+++ b/ql/src/test/results/clientpositive/llap/cbo_join_transitive_pred_loop_1.q.out
@@ -57,7 +57,7 @@ POSTHOOK: Input: default@test2
 POSTHOOK: Input: default@test3
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(month=[$0], con_usd=[$2])
+HiveProject(c.month=[$0], d.con_usd=[$2])
   HiveJoin(condition=[=($0, $1)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(month=[$0])
       HiveUnion(all=[true])
diff --git a/ql/src/test/results/clientpositive/llap/cbo_join_transitive_pred_loop_2.q.out b/ql/src/test/results/clientpositive/llap/cbo_join_transitive_pred_loop_2.q.out
index 270de1776ed..2d50397218b 100644
--- a/ql/src/test/results/clientpositive/llap/cbo_join_transitive_pred_loop_2.q.out
+++ b/ql/src/test/results/clientpositive/llap/cbo_join_transitive_pred_loop_2.q.out
@@ -59,16 +59,17 @@ POSTHOOK: Input: default@table2
 POSTHOOK: Input: default@tenant_1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJoin(condition=[=($1, $2)], joinType=[inner], algorithm=[none], cost=[not available])
-  HiveProject(date_key=[$0], tenant_id=[$1])
-    HiveUnion(all=[true])
-      HiveProject(date_key=[$1], tenant_id=[CAST(0):INTEGER])
-        HiveFilter(condition=[=($0, 0)])
-          HiveTableScan(table=[[default, table2]], table:alias=[table2])
-      HiveProject(date_key=[$1], tenant_id=[$0])
-        HiveFilter(condition=[<>($0, 0)])
-          HiveTableScan(table=[[default, table2]], table:alias=[table2])
-  HiveProject(tenant_id=[$0], tenant_key=[$1])
-    HiveFilter(condition=[IS NOT NULL($0)])
-      HiveTableScan(table=[[default, tenant_1]], table:alias=[dt])
+HiveProject(a.date_key=[$0], a.tenant_id=[$1], dt.tenant_id=[$2], dt.tenant_key=[$3])
+  HiveJoin(condition=[=($1, $2)], joinType=[inner], algorithm=[none], cost=[not available])
+    HiveProject(date_key=[$0], tenant_id=[$1])
+      HiveUnion(all=[true])
+        HiveProject(date_key=[$1], tenant_id=[CAST(0):INTEGER])
+          HiveFilter(condition=[=($0, 0)])
+            HiveTableScan(table=[[default, table2]], table:alias=[table2])
+        HiveProject(date_key=[$1], tenant_id=[$0])
+          HiveFilter(condition=[<>($0, 0)])
+            HiveTableScan(table=[[default, table2]], table:alias=[table2])
+    HiveProject(tenant_id=[$0], tenant_key=[$1])
+      HiveFilter(condition=[IS NOT NULL($0)])
+        HiveTableScan(table=[[default, tenant_1]], table:alias=[dt])
 
diff --git a/ql/src/test/results/clientpositive/llap/cbo_join_transitive_pred_loop_3.q.out b/ql/src/test/results/clientpositive/llap/cbo_join_transitive_pred_loop_3.q.out
index fb331029b4e..f6c27dbf561 100644
--- a/ql/src/test/results/clientpositive/llap/cbo_join_transitive_pred_loop_3.q.out
+++ b/ql/src/test/results/clientpositive/llap/cbo_join_transitive_pred_loop_3.q.out
@@ -51,7 +51,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@tablea
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(bd_id=[$0])
+HiveProject(a.bd_id=[$0])
   HiveJoin(condition=[=($0, $1)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(bd_id=[$0])
       HiveFilter(condition=[AND(OR(AND(=($0, 8), IN($1, _UTF-16LE'A':VARCHAR(2147483647) CHARACTER SET "UTF-16LE", _UTF-16LE'C':VARCHAR(2147483647) CHARACTER SET "UTF-16LE")), AND(=($0, 9), IN($1, _UTF-16LE'A':VARCHAR(2147483647) CHARACTER SET "UTF-16LE", _UTF-16LE'B':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"))), IS NOT NULL($0))])
diff --git a/ql/src/test/results/clientpositive/llap/cbo_join_transitive_pred_loop_4.q.out b/ql/src/test/results/clientpositive/llap/cbo_join_transitive_pred_loop_4.q.out
index 0319ac7ab2e..dc73afba7cd 100644
--- a/ql/src/test/results/clientpositive/llap/cbo_join_transitive_pred_loop_4.q.out
+++ b/ql/src/test/results/clientpositive/llap/cbo_join_transitive_pred_loop_4.q.out
@@ -51,7 +51,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@tablea
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(bd_id=[$0])
+HiveProject(a.bd_id=[$0])
   HiveJoin(condition=[=($0, $1)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(bd_id=[$0])
       HiveFilter(condition=[AND(OR(AND(=($0, 8), IN($1, _UTF-16LE'A':VARCHAR(2147483647) CHARACTER SET "UTF-16LE", _UTF-16LE'C':VARCHAR(2147483647) CHARACTER SET "UTF-16LE")), AND(=($0, 9), IN($1, _UTF-16LE'A':VARCHAR(2147483647) CHARACTER SET "UTF-16LE", _UTF-16LE'B':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"))), IS NOT NULL($0))])
diff --git a/ql/src/test/results/clientpositive/llap/cbo_limit.q.out b/ql/src/test/results/clientpositive/llap/cbo_limit.q.out
index c2d2032d678..1744eabbf1c 100644
--- a/ql/src/test/results/clientpositive/llap/cbo_limit.q.out
+++ b/ql/src/test/results/clientpositive/llap/cbo_limit.q.out
@@ -265,9 +265,10 @@ POSTHOOK: Input: default@cbo_t1
 POSTHOOK: Input: default@cbo_t1@dt=2014
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{}], agg#0=[count()])
-  HiveFilter(condition=[>($2, 1)])
-    HiveTableScan(table=[[default, cbo_t1]], table:alias=[cbo_t1])
+HiveProject(cs=[$0])
+  HiveAggregate(group=[{}], agg#0=[count()])
+    HiveFilter(condition=[>($2, 1)])
+      HiveTableScan(table=[[default, cbo_t1]], table:alias=[cbo_t1])
 
 PREHOOK: query: select count(*) cs from cbo_t1 where c_int > 1 order by cs limit 100
 PREHOOK: type: QUERY
@@ -291,9 +292,10 @@ POSTHOOK: Input: default@cbo_t1
 POSTHOOK: Input: default@cbo_t1@dt=2014
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{}], agg#0=[count()])
-  HiveFilter(condition=[>($2, 1)])
-    HiveTableScan(table=[[default, cbo_t1]], table:alias=[cbo_t1])
+HiveProject(cs=[$0])
+  HiveAggregate(group=[{}], agg#0=[count()])
+    HiveFilter(condition=[>($2, 1)])
+      HiveTableScan(table=[[default, cbo_t1]], table:alias=[cbo_t1])
 
 PREHOOK: query: select count(*) cs from cbo_t1 where c_int > 1 order by cs
 PREHOOK: type: QUERY
@@ -317,9 +319,10 @@ POSTHOOK: Input: default@cbo_t1
 POSTHOOK: Input: default@cbo_t1@dt=2014
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{}], agg#0=[count()])
-  HiveFilter(condition=[>($2, 1)])
-    HiveTableScan(table=[[default, cbo_t1]], table:alias=[cbo_t1])
+HiveProject(cs=[$0])
+  HiveAggregate(group=[{}], agg#0=[count()])
+    HiveFilter(condition=[>($2, 1)])
+      HiveTableScan(table=[[default, cbo_t1]], table:alias=[cbo_t1])
 
 PREHOOK: query: select count(*) cs from cbo_t1 where c_int > 1 LIMIT 100
 PREHOOK: type: QUERY
@@ -343,12 +346,13 @@ POSTHOOK: Input: default@cbo_t1
 POSTHOOK: Input: default@cbo_t1@dt=2014
 #### A masked pattern was here ####
 CBO PLAN:
-HiveFilter(condition=[>($0, 1)])
-  HiveProject(c_int=[$0])
-    HiveSortLimit(fetch=[1])
-      HiveProject(c_int=[$2])
-        HiveFilter(condition=[>($3, 1E0)])
-          HiveTableScan(table=[[default, cbo_t1]], table:alias=[cbo_t1])
+HiveProject(c_int=[$0])
+  HiveFilter(condition=[>($0, 1)])
+    HiveProject(c_int=[$0])
+      HiveSortLimit(fetch=[1])
+        HiveProject(c_int=[$2])
+          HiveFilter(condition=[>($3, 1E0)])
+            HiveTableScan(table=[[default, cbo_t1]], table:alias=[cbo_t1])
 
 PREHOOK: query: select c_int from (select c_int from cbo_t1 where c_float > 1.0 limit 1) subq  where c_int > 1 order by c_int
 PREHOOK: type: QUERY
@@ -388,8 +392,9 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@cbo_t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{}], agg#0=[count()])
-  HiveTableScan(table=[[default, cbo_t1]], table:alias=[cbo_t1])
+HiveProject(_c0=[$0])
+  HiveAggregate(group=[{}], agg#0=[count()])
+    HiveTableScan(table=[[default, cbo_t1]], table:alias=[cbo_t1])
 
 PREHOOK: query: select count(*) from cbo_t1 order by sum(c_int), count(*)
 PREHOOK: type: QUERY
diff --git a/ql/src/test/results/clientpositive/llap/cbo_order_distribute_sort_cluster_by_cnst.q.out b/ql/src/test/results/clientpositive/llap/cbo_order_distribute_sort_cluster_by_cnst.q.out
index 905d72a9180..3cf3fab7c1f 100644
--- a/ql/src/test/results/clientpositive/llap/cbo_order_distribute_sort_cluster_by_cnst.q.out
+++ b/ql/src/test/results/clientpositive/llap/cbo_order_distribute_sort_cluster_by_cnst.q.out
@@ -17,7 +17,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(a=[$0], b=[$1], c=[$2])
+HiveProject(t1.a=[$0], t1.b=[$1], t1.c=[$2])
   HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
 PREHOOK: query: explain
@@ -56,7 +56,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(a=[$0], b=[$1], c=[$2])
+HiveProject(t1.a=[$0], t1.b=[$1], t1.c=[$2])
   HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
 PREHOOK: query: explain
@@ -96,7 +96,7 @@ POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortExchange(distribution=[hash[1]], collation=[[]])
-  HiveProject(a=[$0], b=[$1], c=[$2])
+  HiveProject(t1.a=[$0], t1.b=[$1], t1.c=[$2])
     HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
 PREHOOK: query: explain
@@ -170,7 +170,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(a=[$0], b=[$1], c=[$2])
+HiveProject(t1.a=[$0], t1.b=[$1], t1.c=[$2])
   HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
 PREHOOK: query: explain
@@ -210,7 +210,7 @@ POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortExchange(distribution=[hash[1]], collation=[[1 ASC-nulls-first]])
-  HiveProject(a=[$0], b=[$1], c=[$2])
+  HiveProject(t1.a=[$0], t1.b=[$1], t1.c=[$2])
     HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
 PREHOOK: query: explain
diff --git a/ql/src/test/results/clientpositive/llap/cbo_self_join_ambiguous_alias_cte.q.out b/ql/src/test/results/clientpositive/llap/cbo_self_join_ambiguous_alias_cte.q.out
index 327da794726..8ddab9b785c 100644
--- a/ql/src/test/results/clientpositive/llap/cbo_self_join_ambiguous_alias_cte.q.out
+++ b/ql/src/test/results/clientpositive/llap/cbo_self_join_ambiguous_alias_cte.q.out
@@ -23,7 +23,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[$0], value=[$1], BLOCK__OFFSET__INSIDE__FILE=[$2], INPUT__FILE__NAME=[$3], ROW__ID=[$4], ROW__IS__DELETED=[$5], key0=[$12], value0=[$13], BLOCK__OFFSET__INSIDE__FILE0=[$14], INPUT__FILE__NAME0=[$15], ROW__ID0=[$16], ROW__IS__DELETED0=[$17], key1=[$6], value1=[$7], BLOCK__OFFSET__INSIDE__FILE1=[$8], INPUT__FILE__NAME1=[$9], ROW__ID1=[$10], ROW__IS__DELETED1=[$11])
+HiveProject(a.key=[$0], a.value=[$1], a.block__offset__inside__file=[$2], a.input__file__name=[$3], a.row__id=[$4], a.row__is__deleted=[$5], b.key=[$12], b.value=[$13], b.block__offset__inside__file=[$14], b.input__file__name=[$15], b.row__id=[$16], b.row__is__deleted=[$17], c.key=[$6], c.value=[$7], c.block__offset__inside__file=[$8], c.input__file__name=[$9], c.row__id=[$10], c.row__is__deleted=[$11])
   HiveJoin(condition=[true], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(key=[$0], value=[$1], BLOCK__OFFSET__INSIDE__FILE=[$2], INPUT__FILE__NAME=[$3], ROW__ID=[$4], ROW__IS__DELETED=[$5], key0=[$6], value0=[$7], BLOCK__OFFSET__INSIDE__FILE0=[$8], INPUT__FILE__NAME0=[$9], ROW__ID0=[$10], ROW__IS__DELETED0=[$11])
       HiveJoin(condition=[true], joinType=[inner], algorithm=[none], cost=[not available])
diff --git a/ql/src/test/results/clientpositive/llap/cbo_self_join_ambiguous_alias_mv.q.out b/ql/src/test/results/clientpositive/llap/cbo_self_join_ambiguous_alias_mv.q.out
index b77ea313988..a288c7563b2 100644
--- a/ql/src/test/results/clientpositive/llap/cbo_self_join_ambiguous_alias_mv.q.out
+++ b/ql/src/test/results/clientpositive/llap/cbo_self_join_ambiguous_alias_mv.q.out
@@ -41,7 +41,7 @@ POSTHOOK: Input: default@mv
 POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[$0], value=[$1], key0=[$4], value0=[$5], key1=[$2], value1=[$3])
+HiveProject(a.key=[$0], a.value=[$1], b.key=[$4], b.value=[$5], c.key=[$2], c.value=[$3])
   HiveJoin(condition=[true], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(key=[$0], value=[$1], key0=[$2], value0=[$3])
       HiveJoin(condition=[true], joinType=[inner], algorithm=[none], cost=[not available])
diff --git a/ql/src/test/results/clientpositive/llap/cbo_self_join_ambiguous_alias_subquery.q.out b/ql/src/test/results/clientpositive/llap/cbo_self_join_ambiguous_alias_subquery.q.out
index 56ad6d900ea..a59bb42bea4 100644
--- a/ql/src/test/results/clientpositive/llap/cbo_self_join_ambiguous_alias_subquery.q.out
+++ b/ql/src/test/results/clientpositive/llap/cbo_self_join_ambiguous_alias_subquery.q.out
@@ -25,7 +25,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[$0], value=[$1], BLOCK__OFFSET__INSIDE__FILE=[$2], INPUT__FILE__NAME=[$3], ROW__ID=[$4], ROW__IS__DELETED=[$5], key0=[$12], value0=[$13], BLOCK__OFFSET__INSIDE__FILE0=[$14], INPUT__FILE__NAME0=[$15], ROW__ID0=[$16], ROW__IS__DELETED0=[$17], key1=[$6], value1=[$7], BLOCK__OFFSET__INSIDE__FILE1=[$8], INPUT__FILE__NAME1=[$9], ROW__ID1=[$10], ROW__IS__DELETED1=[$11])
+HiveProject(a.key=[$0], a.value=[$1], a.block__offset__inside__file=[$2], a.input__file__name=[$3], a.row__id=[$4], a.row__is__deleted=[$5], b.key=[$12], b.value=[$13], b.block__offset__inside__file=[$14], b.input__file__name=[$15], b.row__id=[$16], b.row__is__deleted=[$17], c.key=[$6], c.value=[$7], c.block__offset__inside__file=[$8], c.input__file__name=[$9], c.row__id=[$10], c.row__is__deleted=[$11])
   HiveJoin(condition=[true], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(key=[$0], value=[$1], BLOCK__OFFSET__INSIDE__FILE=[$2], INPUT__FILE__NAME=[$3], ROW__ID=[$4], ROW__IS__DELETED=[$5], key0=[$6], value0=[$7], BLOCK__OFFSET__INSIDE__FILE0=[$8], INPUT__FILE__NAME0=[$9], ROW__ID0=[$10], ROW__IS__DELETED0=[$11])
       HiveJoin(condition=[true], joinType=[inner], algorithm=[none], cost=[not available])
diff --git a/ql/src/test/results/clientpositive/llap/cbo_stats_estimation.q.out b/ql/src/test/results/clientpositive/llap/cbo_stats_estimation.q.out
index 590f6dc4726..f40ec12f2ca 100644
--- a/ql/src/test/results/clientpositive/llap/cbo_stats_estimation.q.out
+++ b/ql/src/test/results/clientpositive/llap/cbo_stats_estimation.q.out
@@ -22,7 +22,7 @@ POSTHOOK: query: EXPLAIN EXTENDED SELECT count(1) FROM claims WHERE typ_c=3
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@claims
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM `default`.`claims`
 WHERE `typ_c` = 3
 STAGE DEPENDENCIES:
@@ -152,7 +152,7 @@ POSTHOOK: query: EXPLAIN EXTENDED SELECT count(1) FROM claims WHERE typ_c=3
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@claims
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM `default`.`claims`
 WHERE `typ_c` = 3
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/cbo_windowing_aggregate.q.out b/ql/src/test/results/clientpositive/llap/cbo_windowing_aggregate.q.out
index 484a32416bc..8ebdca8ee8f 100644
--- a/ql/src/test/results/clientpositive/llap/cbo_windowing_aggregate.q.out
+++ b/ql/src/test/results/clientpositive/llap/cbo_windowing_aggregate.q.out
@@ -27,7 +27,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(mul1=[$0], mul2=[$0], _o__c2=[row_number() OVER (PARTITION BY 0 ORDER BY $1 NULLS LAST RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)])
+HiveProject(mul1=[$0], mul2=[$0], _c2=[row_number() OVER (PARTITION BY 0 ORDER BY $1 NULLS LAST RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)])
   HiveProject($f0=[$0], $f1=[$1])
     HiveAggregate(group=[{0, 1}])
       HiveProject($f0=[*($0, 2)], $f1=[*($0, 2)])
diff --git a/ql/src/test/results/clientpositive/llap/combine2.q.out b/ql/src/test/results/clientpositive/llap/combine2.q.out
index f7c1cb40d33..d680989d644 100644
--- a/ql/src/test/results/clientpositive/llap/combine2.q.out
+++ b/ql/src/test/results/clientpositive/llap/combine2.q.out
@@ -150,7 +150,7 @@ select count(1) from combine2_n0 where value is not null
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@combine2_n0
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM `default`.`combine2_n0`
 WHERE `value` IS NOT NULL
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/comments.q.out b/ql/src/test/results/clientpositive/llap/comments.q.out
index e5f52aef912..461f7190a0f 100644
--- a/ql/src/test/results/clientpositive/llap/comments.q.out
+++ b/ql/src/test/results/clientpositive/llap/comments.q.out
@@ -79,7 +79,7 @@ POSTHOOK: query: explain extended select /*+ MAPJOIN(a) */ count(*) from src a j
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c1`
 FROM (SELECT `key`
 FROM `default`.`src`
 WHERE `key` > 0) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/compare_cols_null.q.out b/ql/src/test/results/clientpositive/llap/compare_cols_null.q.out
index 8bdb6ed5bb4..fcaec535471 100644
--- a/ql/src/test/results/clientpositive/llap/compare_cols_null.q.out
+++ b/ql/src/test/results/clientpositive/llap/compare_cols_null.q.out
@@ -112,7 +112,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@ccn_table
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[$0], value=[$1])
+HiveProject(ccn_table.key=[$0], ccn_table.value=[$1])
   HiveFilter(condition=[IS NOT DISTINCT FROM(CAST($0):DOUBLE, null)])
     HiveTableScan(table=[[default, ccn_table]], table:alias=[ccn_table])
 
diff --git a/ql/src/test/results/clientpositive/llap/concat_op.q.out b/ql/src/test/results/clientpositive/llap/concat_op.q.out
index 856b897a3c0..7dbd1f0b32a 100644
--- a/ql/src/test/results/clientpositive/llap/concat_op.q.out
+++ b/ql/src/test/results/clientpositive/llap/concat_op.q.out
@@ -292,7 +292,7 @@ POSTHOOK: query: explain formatted select key || value from src
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 #### A masked pattern was here ####
-{"CBOPlan":"{\n  \"rels\": [\n    {\n      \"id\": \"0\",\n      \"relOp\": \"org.apache.hadoop.hive.ql.optimizer.calcite.reloperators.HiveTableScan\",\n      \"table\": [\n        \"default\",\n        \"src\"\n      ],\n      \"table:alias\": \"src\",\n      \"inputs\": [],\n      \"rowCount\": 500.0,\n      \"avgRowSize\": 9.624,\n      \"rowType\": {\n        \"fields\": [\n          {\n            \"type\": \"VARCHAR\",\n            \"nullable\": true,\n            \"precision\": 21 [...]
+{"CBOPlan":"{\n  \"rels\": [\n    {\n      \"id\": \"0\",\n      \"relOp\": \"org.apache.hadoop.hive.ql.optimizer.calcite.reloperators.HiveTableScan\",\n      \"table\": [\n        \"default\",\n        \"src\"\n      ],\n      \"table:alias\": \"src\",\n      \"inputs\": [],\n      \"rowCount\": 500.0,\n      \"avgRowSize\": 9.624,\n      \"rowType\": {\n        \"fields\": [\n          {\n            \"type\": \"VARCHAR\",\n            \"nullable\": true,\n            \"precision\": 21 [...]
 PREHOOK: query: explain formatted select key || value || key from src
 PREHOOK: type: QUERY
 PREHOOK: Input: default@src
@@ -301,7 +301,7 @@ POSTHOOK: query: explain formatted select key || value || key from src
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 #### A masked pattern was here ####
-{"CBOPlan":"{\n  \"rels\": [\n    {\n      \"id\": \"0\",\n      \"relOp\": \"org.apache.hadoop.hive.ql.optimizer.calcite.reloperators.HiveTableScan\",\n      \"table\": [\n        \"default\",\n        \"src\"\n      ],\n      \"table:alias\": \"src\",\n      \"inputs\": [],\n      \"rowCount\": 500.0,\n      \"avgRowSize\": 9.624,\n      \"rowType\": {\n        \"fields\": [\n          {\n            \"type\": \"VARCHAR\",\n            \"nullable\": true,\n            \"precision\": 21 [...]
+{"CBOPlan":"{\n  \"rels\": [\n    {\n      \"id\": \"0\",\n      \"relOp\": \"org.apache.hadoop.hive.ql.optimizer.calcite.reloperators.HiveTableScan\",\n      \"table\": [\n        \"default\",\n        \"src\"\n      ],\n      \"table:alias\": \"src\",\n      \"inputs\": [],\n      \"rowCount\": 500.0,\n      \"avgRowSize\": 9.624,\n      \"rowType\": {\n        \"fields\": [\n          {\n            \"type\": \"VARCHAR\",\n            \"nullable\": true,\n            \"precision\": 21 [...]
 PREHOOK: query: explain formatted select key || value || key || value from src
 PREHOOK: type: QUERY
 PREHOOK: Input: default@src
@@ -310,4 +310,4 @@ POSTHOOK: query: explain formatted select key || value || key || value from src
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 #### A masked pattern was here ####
-{"CBOPlan":"{\n  \"rels\": [\n    {\n      \"id\": \"0\",\n      \"relOp\": \"org.apache.hadoop.hive.ql.optimizer.calcite.reloperators.HiveTableScan\",\n      \"table\": [\n        \"default\",\n        \"src\"\n      ],\n      \"table:alias\": \"src\",\n      \"inputs\": [],\n      \"rowCount\": 500.0,\n      \"avgRowSize\": 9.624,\n      \"rowType\": {\n        \"fields\": [\n          {\n            \"type\": \"VARCHAR\",\n            \"nullable\": true,\n            \"precision\": 21 [...]
+{"CBOPlan":"{\n  \"rels\": [\n    {\n      \"id\": \"0\",\n      \"relOp\": \"org.apache.hadoop.hive.ql.optimizer.calcite.reloperators.HiveTableScan\",\n      \"table\": [\n        \"default\",\n        \"src\"\n      ],\n      \"table:alias\": \"src\",\n      \"inputs\": [],\n      \"rowCount\": 500.0,\n      \"avgRowSize\": 9.624,\n      \"rowType\": {\n        \"fields\": [\n          {\n            \"type\": \"VARCHAR\",\n            \"nullable\": true,\n            \"precision\": 21 [...]
diff --git a/ql/src/test/results/clientpositive/llap/constantPropagateForSubQuery.q.out b/ql/src/test/results/clientpositive/llap/constantPropagateForSubQuery.q.out
index 2c50a30e681..1f49dd083e8 100644
--- a/ql/src/test/results/clientpositive/llap/constantPropagateForSubQuery.q.out
+++ b/ql/src/test/results/clientpositive/llap/constantPropagateForSubQuery.q.out
@@ -11,7 +11,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 POSTHOOK: Input: default@src1
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST('429' AS STRING) AS `ak`, `t0`.`value` AS `av`, `t1`.`key` AS `bk`, `t1`.`value` AS `bv`
+OPTIMIZED SQL: SELECT CAST('429' AS STRING) AS `c.ak`, `t0`.`value` AS `c.av`, `t1`.`key` AS `c.bk`, `t1`.`value` AS `c.bv`
 FROM (SELECT `value`
 FROM `default`.`src`
 WHERE `key` = '429') AS `t0`,
diff --git a/ql/src/test/results/clientpositive/llap/constraints_explain_ddl.q.out b/ql/src/test/results/clientpositive/llap/constraints_explain_ddl.q.out
index 968833a457d..1564c22c561 100644
--- a/ql/src/test/results/clientpositive/llap/constraints_explain_ddl.q.out
+++ b/ql/src/test/results/clientpositive/llap/constraints_explain_ddl.q.out
@@ -645,7 +645,7 @@ d_sellingseason order by d_datekey limit 10;
 
 EXPLAIN VECTORIZED SELECT count(d_datekey) from dates_removal_n0 where d_year IN (1985, 2004) group by d_id, d_daynuminmonth, d_datekey,
 d_sellingseason order by d_datekey limit 10;
-CBO PLAN:HiveProject(_o__c0=[$0])
+CBO PLAN:HiveProject(_c0=[$0])
   HiveSortLimit(sort0=[$1], dir0=[ASC], fetch=[10])
     HiveProject(_o__c0=[$2], (tok_table_or_col d_datekey)=[$0])
       HiveAggregate(group=[{0, 1}], agg#0=[count()])
@@ -1347,7 +1347,7 @@ group by c_custkey, c_nation;
 
 EXPLAIN VECTORIZED SELECT count(c_custkey) from customer_removal_n0 where c_nation IN ('USA', 'INDIA')
 group by c_custkey, c_nation;
-CBO PLAN:HiveProject(_o__c0=[$1])
+CBO PLAN:HiveProject(_c0=[$1])
   HiveAggregate(group=[{0}], agg#0=[count()])
     HiveFilter(condition=[IN($4, _UTF-16LE'INDIA':VARCHAR(2147483647) CHARACTER SET "UTF-16LE", _UTF-16LE'USA':VARCHAR(2147483647) CHARACTER SET "UTF-16LE")])
       HiveTableScan(table=[[default, customer_removal_n0]], table:alias=[customer_removal_n0])
@@ -1713,7 +1713,7 @@ EXPLAIN CBO select count(key1) from dest_g21 group by key1, value1;
 
 
 EXPLAIN VECTORIZED select count(key1) from dest_g21 group by key1, value1;
-CBO PLAN:HiveProject(_o__c0=[$1])
+CBO PLAN:HiveProject(_c0=[$1])
   HiveAggregate(group=[{0}], agg#0=[count()])
     HiveTableScan(table=[[default, dest_g21]], table:alias=[dest_g21])
 
@@ -1839,7 +1839,7 @@ EXPLAIN CBO select count(key1) from dest_g21 where value1 > 1 group by key1, val
 
 
 EXPLAIN VECTORIZED select count(key1) from dest_g21 where value1 > 1 group by key1, value1;
-CBO PLAN:HiveProject(_o__c0=[$1])
+CBO PLAN:HiveProject(_c0=[$1])
   HiveAggregate(group=[{0}], agg#0=[count()])
     HiveFilter(condition=[>($1, 1E0)])
       HiveTableScan(table=[[default, dest_g21]], table:alias=[dest_g21])
@@ -1973,7 +1973,7 @@ EXPLAIN CBO select t1.key1 from dest_g21 t1 join dest_g21 t2 on t1.key1 = t2.key
 
 
 EXPLAIN VECTORIZED select t1.key1 from dest_g21 t1 join dest_g21 t2 on t1.key1 = t2.key1 where t2.value1 > 2 group by t1.key1, t1.value1;
-CBO PLAN:HiveProject(key1=[$0])
+CBO PLAN:HiveProject(t1.key1=[$0])
   HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(key1=[$0], value1=[$1])
       HiveTableScan(table=[[default, dest_g21]], table:alias=[t1])
@@ -2120,7 +2120,7 @@ EXPLAIN CBO select count(t1.key1) from dest_g21 t1 join dest_g21 t2 on t1.key1 =
 
 
 EXPLAIN VECTORIZED select count(t1.key1) from dest_g21 t1 join dest_g21 t2 on t1.key1 = t2.key1 where t2.value1 > 2 group by t1.key1, t1.value1;
-CBO PLAN:HiveProject(_o__c0=[$1])
+CBO PLAN:HiveProject(_c0=[$1])
   HiveAggregate(group=[{0}], agg#0=[count()])
     HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject(key1=[$0], value1=[$1])
@@ -2373,9 +2373,10 @@ EXPLAIN CBO select key1, sm from (select key1, count(key1), sum(key1) as sm from
 
 
 EXPLAIN VECTORIZED select key1, sm from (select key1, count(key1), sum(key1) as sm from dest_g21 where value1 < 4.5 group by key1, value1) sub;
-CBO PLAN:HiveAggregate(group=[{0}], agg#0=[sum($0)])
-  HiveFilter(condition=[<($1, 4.5E0)])
-    HiveTableScan(table=[[default, dest_g21]], table:alias=[dest_g21])
+CBO PLAN:HiveProject(key1=[$0], sm=[$1])
+  HiveAggregate(group=[{0}], agg#0=[sum($0)])
+    HiveFilter(condition=[<($1, 4.5E0)])
+      HiveTableScan(table=[[default, dest_g21]], table:alias=[dest_g21])
 
 PLAN VECTORIZATION:
   enabled: true
@@ -2922,7 +2923,7 @@ EXPLAIN CBO select sum(t1.i) from tconst t1 join tconst t2 on t1.i=t2.j group by
 
 
 EXPLAIN VECTORIZED select sum(t1.i) from tconst t1 join tconst t2 on t1.i=t2.j group by t1.i, t1.d_year;
-CBO PLAN:HiveProject(_o__c0=[$2])
+CBO PLAN:HiveProject(_c0=[$2])
   HiveAggregate(group=[{0, 1}], agg#0=[sum($0)])
     HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject(i=[$0], d_year=[$2])
@@ -3111,7 +3112,7 @@ EXPLAIN CBO select sum(t1.i) from tconst t1 join tconst t2 on t1.i=t2.i group by
 
 
 EXPLAIN VECTORIZED select sum(t1.i) from tconst t1 join tconst t2 on t1.i=t2.i group by t1.i, t1.d_year;
-CBO PLAN:HiveProject(_o__c0=[$2])
+CBO PLAN:HiveProject(_c0=[$2])
   HiveAggregate(group=[{0, 1}], agg#0=[sum($0)])
     HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject(i=[$0], d_year=[$2])
@@ -3753,13 +3754,14 @@ group by c_customer_id
 ,c_birth_country
 ,c_login
 ,c_email_address;
-CBO PLAN:HiveAggregate(group=[{1}])
-  HiveJoin(condition=[=($0, $8)], joinType=[inner], algorithm=[none], cost=[not available])
-    HiveProject(c_customer_sk=[$0], c_customer_id=[$1], c_first_name=[$8], c_last_name=[$9], c_preferred_cust_flag=[$10], c_birth_country=[$14], c_login=[$15], c_email_address=[$16])
-      HiveTableScan(table=[[default, customer]], table:alias=[customer])
-    HiveProject(ss_customer_sk=[$3])
-      HiveFilter(condition=[IS NOT NULL($3)])
-        HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales])
+CBO PLAN:HiveProject(c_customer_id=[$0])
+  HiveAggregate(group=[{1}])
+    HiveJoin(condition=[=($0, $8)], joinType=[inner], algorithm=[none], cost=[not available])
+      HiveProject(c_customer_sk=[$0], c_customer_id=[$1], c_first_name=[$8], c_last_name=[$9], c_preferred_cust_flag=[$10], c_birth_country=[$14], c_login=[$15], c_email_address=[$16])
+        HiveTableScan(table=[[default, customer]], table:alias=[customer])
+      HiveProject(ss_customer_sk=[$3])
+        HiveFilter(condition=[IS NOT NULL($3)])
+          HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales])
 
 PLAN VECTORIZATION:
   enabled: true
@@ -4037,13 +4039,14 @@ group by c_customer_id
 ,c_birth_country
 ,c_login
 ,c_email_address;
-CBO PLAN:HiveAggregate(group=[{2}])
-  HiveJoin(condition=[=($1, $0)], joinType=[inner], algorithm=[none], cost=[not available])
-    HiveProject(ss_customer_sk=[$3])
-      HiveFilter(condition=[IS NOT NULL($3)])
-        HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales])
-    HiveProject(c_customer_sk=[$0], c_customer_id=[$1], c_first_name=[$8], c_last_name=[$9], c_preferred_cust_flag=[$10], c_birth_country=[$14], c_login=[$15], c_email_address=[$16])
-      HiveTableScan(table=[[default, customer]], table:alias=[customer])
+CBO PLAN:HiveProject(c_customer_id=[$0])
+  HiveAggregate(group=[{2}])
+    HiveJoin(condition=[=($1, $0)], joinType=[inner], algorithm=[none], cost=[not available])
+      HiveProject(ss_customer_sk=[$3])
+        HiveFilter(condition=[IS NOT NULL($3)])
+          HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales])
+      HiveProject(c_customer_sk=[$0], c_customer_id=[$1], c_first_name=[$8], c_last_name=[$9], c_preferred_cust_flag=[$10], c_birth_country=[$14], c_login=[$15], c_email_address=[$16])
+        HiveTableScan(table=[[default, customer]], table:alias=[customer])
 
 PLAN VECTORIZATION:
   enabled: true
@@ -4397,7 +4400,7 @@ where t_s_secyear.sale_type = 's'
 order by t_s_secyear.customer_preferred_cust_flag
 limit 100;
 CBO PLAN:HiveSortLimit(sort0=[$0], dir0=[ASC], fetch=[100])
-  HiveProject(customer_preferred_cust_flag=[$1])
+  HiveProject(t_s_secyear.customer_preferred_cust_flag=[$1])
     HiveAggregate(group=[{1, 4}])
       HiveJoin(condition=[=($0, $8)], joinType=[inner], algorithm=[none], cost=[not available])
         HiveProject(c_customer_sk=[$0], c_customer_id=[$1], c_first_name=[$8], c_last_name=[$9], c_preferred_cust_flag=[$10], c_birth_country=[$14], c_login=[$15], c_email_address=[$16])
@@ -4795,7 +4798,7 @@ where t_s_secyear.sale_type = 's'
 order by t_s_secyear.customer_preferred_cust_flag
 limit 100;
 CBO PLAN:HiveSortLimit(sort0=[$0], dir0=[ASC], fetch=[100])
-  HiveProject(customer_preferred_cust_flag=[$1])
+  HiveProject(t_s_secyear.customer_preferred_cust_flag=[$1])
     HiveAggregate(group=[{1, 4}])
       HiveJoin(condition=[=($0, $8)], joinType=[inner], algorithm=[none], cost=[not available])
         HiveProject(c_customer_sk=[$0], c_customer_id=[$1], c_first_name=[$8], c_last_name=[$9], c_preferred_cust_flag=[$10], c_birth_country=[$14], c_login=[$15], c_email_address=[$16])
@@ -5345,7 +5348,7 @@ and t_s_firstyear.year_total > 0
 order by t_s_secyear.customer_preferred_cust_flag
 limit 100;
 CBO PLAN:HiveSortLimit(sort0=[$0], dir0=[ASC], fetch=[100])
-  HiveProject(customer_preferred_cust_flag=[$1])
+  HiveProject(t_s_secyear.customer_preferred_cust_flag=[$1])
     HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject(c_customer_id=[$0], c_preferred_cust_flag=[$1])
         HiveAggregate(group=[{1, 4}])
@@ -5901,12 +5904,13 @@ C_CUSTOMER_SK
 ,	C_LOGIN
 ,	C_EMAIL_ADDRESS
 ;
-CBO PLAN:HiveSemiJoin(condition=[=($0, $1)], joinType=[semi])
-  HiveProject(c_customer_sk=[$0])
-    HiveTableScan(table=[[default, customer]], table:alias=[customer])
-  HiveProject(ss_customer_sk=[$3])
-    HiveFilter(condition=[IS NOT NULL($3)])
-      HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales])
+CBO PLAN:HiveProject(c_customer_sk=[$0])
+  HiveSemiJoin(condition=[=($0, $1)], joinType=[semi])
+    HiveProject(c_customer_sk=[$0])
+      HiveTableScan(table=[[default, customer]], table:alias=[customer])
+    HiveProject(ss_customer_sk=[$3])
+      HiveFilter(condition=[IS NOT NULL($3)])
+        HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales])
 
 PLAN VECTORIZATION:
   enabled: true
@@ -6841,13 +6845,14 @@ C_EMAIL_ADDRESS
 ,	C_BIRTH_COUNTRY
 ,	C_LOGIN
 ;
-CBO PLAN:HiveAggregate(group=[{1}])
-  HiveJoin(condition=[=($0, $8)], joinType=[inner], algorithm=[none], cost=[not available])
-    HiveProject(c_customer_sk=[$0], c_customer_id=[$1], c_first_name=[$8], c_last_name=[$9], c_preferred_cust_flag=[$10], c_birth_country=[$14], c_login=[$15], c_email_address=[$16])
-      HiveTableScan(table=[[default, customer]], table:alias=[customer])
-    HiveProject(ss_customer_sk=[$3])
-      HiveFilter(condition=[IS NOT NULL($3)])
-        HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales])
+CBO PLAN:HiveProject(c_customer_id=[$0])
+  HiveAggregate(group=[{1}])
+    HiveJoin(condition=[=($0, $8)], joinType=[inner], algorithm=[none], cost=[not available])
+      HiveProject(c_customer_sk=[$0], c_customer_id=[$1], c_first_name=[$8], c_last_name=[$9], c_preferred_cust_flag=[$10], c_birth_country=[$14], c_login=[$15], c_email_address=[$16])
+        HiveTableScan(table=[[default, customer]], table:alias=[customer])
+      HiveProject(ss_customer_sk=[$3])
+        HiveFilter(condition=[IS NOT NULL($3)])
+          HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales])
 
 PLAN VECTORIZATION:
   enabled: true
@@ -7048,10 +7053,11 @@ EXPLAIN select count(distinct ws_order_number) from web_sales;
 EXPLAIN CBO select count(distinct ws_order_number) from web_sales;
 
 EXPLAIN VECTORIZED select count(distinct ws_order_number) from web_sales;
-CBO PLAN:HiveAggregate(group=[{}], agg#0=[count()])
-  HiveProject(ws_order_number=[$0])
-    HiveAggregate(group=[{0}])
-      HiveTableScan(table=[[default, web_sales]], table:alias=[web_sales])
+CBO PLAN:HiveProject(_c0=[$0])
+  HiveAggregate(group=[{}], agg#0=[count()])
+    HiveProject(ws_order_number=[$0])
+      HiveAggregate(group=[{0}])
+        HiveTableScan(table=[[default, web_sales]], table:alias=[web_sales])
 
 PLAN VECTORIZATION:
   enabled: true
@@ -7387,7 +7393,7 @@ EXPLAIN CBO select * from table1_n13;
 
 
 EXPLAIN VECTORIZED select * from table1_n13;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table1_n13.a=[$0], table1_n13.b=[$1])
   HiveTableScan(table=[[default, table1_n13]], table:alias=[table1_n13])
 
 PLAN VECTORIZATION:
@@ -7441,7 +7447,7 @@ EXPLAIN select * from table2_n8;
 EXPLAIN CBO select * from table2_n8;
 
 EXPLAIN VECTORIZED select * from table2_n8;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table2_n8.a=[$0], table2_n8.b=[$1])
   HiveTableScan(table=[[default, table2_n8]], table:alias=[table2_n8])
 
 PLAN VECTORIZATION:
@@ -7494,7 +7500,7 @@ EXPLAIN select * from table3_n1;
 EXPLAIN CBO select * from table3_n1;
 
 EXPLAIN VECTORIZED select * from table3_n1;
-CBO PLAN:HiveProject(x=[$0])
+CBO PLAN:HiveProject(table3_n1.x=[$0])
   HiveTableScan(table=[[default, table3_n1]], table:alias=[table3_n1])
 
 PLAN VECTORIZATION:
@@ -7548,7 +7554,7 @@ EXPLAIN select * from table4_n0;
 EXPLAIN CBO select * from table4_n0;
 
 EXPLAIN VECTORIZED select * from table4_n0;
-CBO PLAN:HiveProject(x=[$0], y=[$1])
+CBO PLAN:HiveProject(table4_n0.x=[$0], table4_n0.y=[$1])
   HiveTableScan(table=[[default, table4_n0]], table:alias=[table4_n0])
 
 PLAN VECTORIZATION:
@@ -7601,7 +7607,7 @@ EXPLAIN select * from table5_n4;
 EXPLAIN CBO select * from table5_n4;
 
 EXPLAIN VECTORIZED select * from table5_n4;
-CBO PLAN:HiveProject(x=[$0])
+CBO PLAN:HiveProject(table5_n4.x=[$0])
   HiveTableScan(table=[[default, table5_n4]], table:alias=[table5_n4])
 
 PLAN VECTORIZATION:
@@ -7655,7 +7661,7 @@ EXPLAIN select * from table6_n3;
 EXPLAIN CBO select * from table6_n3;
 
 EXPLAIN VECTORIZED select * from table6_n3;
-CBO PLAN:HiveProject(x=[$0], y=[$1])
+CBO PLAN:HiveProject(table6_n3.x=[$0], table6_n3.y=[$1])
   HiveTableScan(table=[[default, table6_n3]], table:alias=[table6_n3])
 
 PLAN VECTORIZATION:
@@ -7710,7 +7716,7 @@ EXPLAIN select * from table7_n3;
 EXPLAIN CBO select * from table7_n3;
 
 EXPLAIN VECTORIZED select * from table7_n3;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table7_n3.a=[$0], table7_n3.b=[$1])
   HiveTableScan(table=[[default, table7_n3]], table:alias=[table7_n3])
 
 PLAN VECTORIZATION:
@@ -7764,7 +7770,7 @@ EXPLAIN select * from table8;
 EXPLAIN CBO select * from table8;
 
 EXPLAIN VECTORIZED select * from table8;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table8.a=[$0], table8.b=[$1])
   HiveTableScan(table=[[default, table8]], table:alias=[table8])
 
 PLAN VECTORIZATION:
@@ -7819,7 +7825,7 @@ EXPLAIN select * from table9;
 EXPLAIN CBO select * from table9;
 
 EXPLAIN VECTORIZED select * from table9;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table9.a=[$0], table9.b=[$1])
   HiveTableScan(table=[[default, table9]], table:alias=[table9])
 
 PLAN VECTORIZATION:
@@ -7873,7 +7879,7 @@ EXPLAIN select * from table10;
 EXPLAIN CBO select * from table10;
 
 EXPLAIN VECTORIZED select * from table10;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table10.a=[$0], table10.b=[$1])
   HiveTableScan(table=[[default, table10]], table:alias=[table10])
 
 PLAN VECTORIZATION:
@@ -7929,7 +7935,7 @@ EXPLAIN select * from table11;
 EXPLAIN CBO select * from table11;
 
 EXPLAIN VECTORIZED select * from table11;
-CBO PLAN:HiveProject(a=[$0], b=[$1], c=[$2])
+CBO PLAN:HiveProject(table11.a=[$0], table11.b=[$1], table11.c=[$2])
   HiveTableScan(table=[[default, table11]], table:alias=[table11])
 
 PLAN VECTORIZATION:
@@ -7983,7 +7989,7 @@ EXPLAIN select * from table12;
 EXPLAIN CBO select * from table12;
 
 EXPLAIN VECTORIZED select * from table12;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table12.a=[$0], table12.b=[$1])
   HiveTableScan(table=[[default, table12]], table:alias=[table12])
 
 PLAN VECTORIZATION:
@@ -8038,7 +8044,7 @@ EXPLAIN select * from table13;
 EXPLAIN CBO select * from table13;
 
 EXPLAIN VECTORIZED select * from table13;
-CBO PLAN:HiveProject(b=[$0], a=[$1])
+CBO PLAN:HiveProject(table13.b=[$0], table13.a=[$1])
   HiveTableScan(table=[[default, table13]], table:alias=[table13])
 
 PLAN VECTORIZATION:
@@ -8092,7 +8098,7 @@ EXPLAIN select * from table14;
 EXPLAIN CBO select * from table14;
 
 EXPLAIN VECTORIZED select * from table14;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table14.a=[$0], table14.b=[$1])
   HiveTableScan(table=[[default, table14]], table:alias=[table14])
 
 PLAN VECTORIZATION:
@@ -8146,7 +8152,7 @@ EXPLAIN select * from table15;
 EXPLAIN CBO select * from table15;
 
 EXPLAIN VECTORIZED select * from table15;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table15.a=[$0], table15.b=[$1])
   HiveTableScan(table=[[default, table15]], table:alias=[table15])
 
 PLAN VECTORIZATION:
@@ -8200,7 +8206,7 @@ EXPLAIN select * from table16;
 EXPLAIN CBO select * from table16;
 
 EXPLAIN VECTORIZED select * from table16;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table16.a=[$0], table16.b=[$1])
   HiveTableScan(table=[[default, table16]], table:alias=[table16])
 
 PLAN VECTORIZATION:
@@ -8254,7 +8260,7 @@ EXPLAIN select * from table17;
 EXPLAIN CBO select * from table17;
 
 EXPLAIN VECTORIZED select * from table17;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table17.a=[$0], table17.b=[$1])
   HiveTableScan(table=[[default, table17]], table:alias=[table17])
 
 PLAN VECTORIZATION:
@@ -8309,7 +8315,7 @@ EXPLAIN select * from table18;
 EXPLAIN CBO select * from table18;
 
 EXPLAIN VECTORIZED select * from table18;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table18.a=[$0], table18.b=[$1])
   HiveTableScan(table=[[default, table18]], table:alias=[table18])
 
 PLAN VECTORIZATION:
@@ -8364,7 +8370,7 @@ EXPLAIN select * from table19;
 EXPLAIN CBO select * from table19;
 
 EXPLAIN VECTORIZED select * from table19;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table19.a=[$0], table19.b=[$1])
   HiveTableScan(table=[[default, table19]], table:alias=[table19])
 
 PLAN VECTORIZATION:
@@ -8418,7 +8424,7 @@ EXPLAIN select * from table20;
 EXPLAIN CBO select * from table20;
 
 EXPLAIN VECTORIZED select * from table20;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table20.a=[$0], table20.b=[$1])
   HiveTableScan(table=[[default, table20]], table:alias=[table20])
 
 PLAN VECTORIZATION:
@@ -8473,7 +8479,7 @@ EXPLAIN select * from table21;
 EXPLAIN CBO select * from table21;
 
 EXPLAIN VECTORIZED select * from table21;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table21.a=[$0], table21.b=[$1])
   HiveTableScan(table=[[default, table21]], table:alias=[table21])
 
 PLAN VECTORIZATION:
@@ -8527,7 +8533,7 @@ EXPLAIN select * from table22;
 EXPLAIN CBO select * from table22;
 
 EXPLAIN VECTORIZED select * from table22;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table22.a=[$0], table22.b=[$1])
   HiveTableScan(table=[[default, table22]], table:alias=[table22])
 
 PLAN VECTORIZATION:
@@ -8584,7 +8590,7 @@ EXPLAIN CBO select * from table1_n13;
 
 
 EXPLAIN VECTORIZED select * from table1_n13;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table1_n13.a=[$0], table1_n13.b=[$1])
   HiveTableScan(table=[[default, table1_n13]], table:alias=[table1_n13])
 
 PLAN VECTORIZATION:
@@ -8638,7 +8644,7 @@ EXPLAIN select * from table2_n8;
 EXPLAIN CBO select * from table2_n8;
 
 EXPLAIN VECTORIZED select * from table2_n8;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table2_n8.a=[$0], table2_n8.b=[$1])
   HiveTableScan(table=[[default, table2_n8]], table:alias=[table2_n8])
 
 PLAN VECTORIZATION:
@@ -8691,7 +8697,7 @@ EXPLAIN select * from table3_n1;
 EXPLAIN CBO select * from table3_n1;
 
 EXPLAIN VECTORIZED select * from table3_n1;
-CBO PLAN:HiveProject(x=[$0])
+CBO PLAN:HiveProject(table3_n1.x=[$0])
   HiveTableScan(table=[[default, table3_n1]], table:alias=[table3_n1])
 
 PLAN VECTORIZATION:
@@ -8745,7 +8751,7 @@ EXPLAIN select * from table4_n0;
 EXPLAIN CBO select * from table4_n0;
 
 EXPLAIN VECTORIZED select * from table4_n0;
-CBO PLAN:HiveProject(x=[$0], y=[$1])
+CBO PLAN:HiveProject(table4_n0.x=[$0], table4_n0.y=[$1])
   HiveTableScan(table=[[default, table4_n0]], table:alias=[table4_n0])
 
 PLAN VECTORIZATION:
@@ -8798,7 +8804,7 @@ EXPLAIN select * from table5_n4;
 EXPLAIN CBO select * from table5_n4;
 
 EXPLAIN VECTORIZED select * from table5_n4;
-CBO PLAN:HiveProject(x=[$0])
+CBO PLAN:HiveProject(table5_n4.x=[$0])
   HiveTableScan(table=[[default, table5_n4]], table:alias=[table5_n4])
 
 PLAN VECTORIZATION:
@@ -8852,7 +8858,7 @@ EXPLAIN select * from table6_n3;
 EXPLAIN CBO select * from table6_n3;
 
 EXPLAIN VECTORIZED select * from table6_n3;
-CBO PLAN:HiveProject(x=[$0], y=[$1])
+CBO PLAN:HiveProject(table6_n3.x=[$0], table6_n3.y=[$1])
   HiveTableScan(table=[[default, table6_n3]], table:alias=[table6_n3])
 
 PLAN VECTORIZATION:
@@ -8907,7 +8913,7 @@ EXPLAIN select * from table7_n3;
 EXPLAIN CBO select * from table7_n3;
 
 EXPLAIN VECTORIZED select * from table7_n3;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table7_n3.a=[$0], table7_n3.b=[$1])
   HiveTableScan(table=[[default, table7_n3]], table:alias=[table7_n3])
 
 PLAN VECTORIZATION:
@@ -8961,7 +8967,7 @@ EXPLAIN select * from table8;
 EXPLAIN CBO select * from table8;
 
 EXPLAIN VECTORIZED select * from table8;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table8.a=[$0], table8.b=[$1])
   HiveTableScan(table=[[default, table8]], table:alias=[table8])
 
 PLAN VECTORIZATION:
@@ -9016,7 +9022,7 @@ EXPLAIN select * from table9;
 EXPLAIN CBO select * from table9;
 
 EXPLAIN VECTORIZED select * from table9;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table9.a=[$0], table9.b=[$1])
   HiveTableScan(table=[[default, table9]], table:alias=[table9])
 
 PLAN VECTORIZATION:
@@ -9070,7 +9076,7 @@ EXPLAIN select * from table10;
 EXPLAIN CBO select * from table10;
 
 EXPLAIN VECTORIZED select * from table10;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table10.a=[$0], table10.b=[$1])
   HiveTableScan(table=[[default, table10]], table:alias=[table10])
 
 PLAN VECTORIZATION:
@@ -9126,7 +9132,7 @@ EXPLAIN select * from table11;
 EXPLAIN CBO select * from table11;
 
 EXPLAIN VECTORIZED select * from table11;
-CBO PLAN:HiveProject(a=[$0], b=[$1], c=[$2])
+CBO PLAN:HiveProject(table11.a=[$0], table11.b=[$1], table11.c=[$2])
   HiveTableScan(table=[[default, table11]], table:alias=[table11])
 
 PLAN VECTORIZATION:
@@ -9180,7 +9186,7 @@ EXPLAIN select * from table12;
 EXPLAIN CBO select * from table12;
 
 EXPLAIN VECTORIZED select * from table12;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table12.a=[$0], table12.b=[$1])
   HiveTableScan(table=[[default, table12]], table:alias=[table12])
 
 PLAN VECTORIZATION:
@@ -9235,7 +9241,7 @@ EXPLAIN select * from table13;
 EXPLAIN CBO select * from table13;
 
 EXPLAIN VECTORIZED select * from table13;
-CBO PLAN:HiveProject(b=[$0], a=[$1])
+CBO PLAN:HiveProject(table13.b=[$0], table13.a=[$1])
   HiveTableScan(table=[[default, table13]], table:alias=[table13])
 
 PLAN VECTORIZATION:
@@ -9289,7 +9295,7 @@ EXPLAIN select * from table14;
 EXPLAIN CBO select * from table14;
 
 EXPLAIN VECTORIZED select * from table14;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table14.a=[$0], table14.b=[$1])
   HiveTableScan(table=[[default, table14]], table:alias=[table14])
 
 PLAN VECTORIZATION:
@@ -9343,7 +9349,7 @@ EXPLAIN select * from table15;
 EXPLAIN CBO select * from table15;
 
 EXPLAIN VECTORIZED select * from table15;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table15.a=[$0], table15.b=[$1])
   HiveTableScan(table=[[default, table15]], table:alias=[table15])
 
 PLAN VECTORIZATION:
@@ -9397,7 +9403,7 @@ EXPLAIN select * from table16;
 EXPLAIN CBO select * from table16;
 
 EXPLAIN VECTORIZED select * from table16;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table16.a=[$0], table16.b=[$1])
   HiveTableScan(table=[[default, table16]], table:alias=[table16])
 
 PLAN VECTORIZATION:
@@ -9451,7 +9457,7 @@ EXPLAIN select * from table17;
 EXPLAIN CBO select * from table17;
 
 EXPLAIN VECTORIZED select * from table17;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table17.a=[$0], table17.b=[$1])
   HiveTableScan(table=[[default, table17]], table:alias=[table17])
 
 PLAN VECTORIZATION:
@@ -9506,7 +9512,7 @@ EXPLAIN select * from table18;
 EXPLAIN CBO select * from table18;
 
 EXPLAIN VECTORIZED select * from table18;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table18.a=[$0], table18.b=[$1])
   HiveTableScan(table=[[default, table18]], table:alias=[table18])
 
 PLAN VECTORIZATION:
@@ -9561,7 +9567,7 @@ EXPLAIN select * from table19;
 EXPLAIN CBO select * from table19;
 
 EXPLAIN VECTORIZED select * from table19;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table19.a=[$0], table19.b=[$1])
   HiveTableScan(table=[[default, table19]], table:alias=[table19])
 
 PLAN VECTORIZATION:
@@ -9615,7 +9621,7 @@ EXPLAIN select * from table20;
 EXPLAIN CBO select * from table20;
 
 EXPLAIN VECTORIZED select * from table20;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table20.a=[$0], table20.b=[$1])
   HiveTableScan(table=[[default, table20]], table:alias=[table20])
 
 PLAN VECTORIZATION:
@@ -9670,7 +9676,7 @@ EXPLAIN select * from table21;
 EXPLAIN CBO select * from table21;
 
 EXPLAIN VECTORIZED select * from table21;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table21.a=[$0], table21.b=[$1])
   HiveTableScan(table=[[default, table21]], table:alias=[table21])
 
 PLAN VECTORIZATION:
@@ -9724,7 +9730,7 @@ EXPLAIN select * from table22;
 EXPLAIN CBO select * from table22;
 
 EXPLAIN VECTORIZED select * from table22;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table22.a=[$0], table22.b=[$1])
   HiveTableScan(table=[[default, table22]], table:alias=[table22])
 
 PLAN VECTORIZATION:
@@ -9837,7 +9843,7 @@ EXPLAIN CBO select * from table2_n8;
 
 
 EXPLAIN VECTORIZED select * from table2_n8;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table2_n8.a=[$0], table2_n8.b=[$1])
   HiveTableScan(table=[[default, table2_n8]], table:alias=[table2_n8])
 
 PLAN VECTORIZATION:
@@ -9890,7 +9896,7 @@ EXPLAIN select * from table3_n1;
 EXPLAIN CBO select * from table3_n1;
 
 EXPLAIN VECTORIZED select * from table3_n1;
-CBO PLAN:HiveProject(x=[$0])
+CBO PLAN:HiveProject(table3_n1.x=[$0])
   HiveTableScan(table=[[default, table3_n1]], table:alias=[table3_n1])
 
 PLAN VECTORIZATION:
@@ -9944,7 +9950,7 @@ EXPLAIN select * from table4_n0;
 EXPLAIN CBO select * from table4_n0;
 
 EXPLAIN VECTORIZED select * from table4_n0;
-CBO PLAN:HiveProject(x=[$0], y=[$1])
+CBO PLAN:HiveProject(table4_n0.x=[$0], table4_n0.y=[$1])
   HiveTableScan(table=[[default, table4_n0]], table:alias=[table4_n0])
 
 PLAN VECTORIZATION:
@@ -9998,7 +10004,7 @@ EXPLAIN select * from table6_n3;
 EXPLAIN CBO select * from table6_n3;
 
 EXPLAIN VECTORIZED select * from table6_n3;
-CBO PLAN:HiveProject(x=[$0], y=[$1])
+CBO PLAN:HiveProject(table6_n3.x=[$0], table6_n3.y=[$1])
   HiveTableScan(table=[[default, table6_n3]], table:alias=[table6_n3])
 
 PLAN VECTORIZATION:
@@ -10052,7 +10058,7 @@ EXPLAIN select * from table8;
 EXPLAIN CBO select * from table8;
 
 EXPLAIN VECTORIZED select * from table8;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table8.a=[$0], table8.b=[$1])
   HiveTableScan(table=[[default, table8]], table:alias=[table8])
 
 PLAN VECTORIZATION:
@@ -10106,7 +10112,7 @@ EXPLAIN select * from table16;
 EXPLAIN CBO select * from table16;
 
 EXPLAIN VECTORIZED select * from table16;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table16.a=[$0], table16.b=[$1])
   HiveTableScan(table=[[default, table16]], table:alias=[table16])
 
 PLAN VECTORIZATION:
@@ -10161,7 +10167,7 @@ EXPLAIN select * from table18;
 EXPLAIN CBO select * from table18;
 
 EXPLAIN VECTORIZED select * from table18;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table18.a=[$0], table18.b=[$1])
   HiveTableScan(table=[[default, table18]], table:alias=[table18])
 
 PLAN VECTORIZATION:
@@ -10218,7 +10224,7 @@ EXPLAIN CBO select * from table2_n8;
 
 
 EXPLAIN VECTORIZED select * from table2_n8;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table2_n8.a=[$0], table2_n8.b=[$1])
   HiveTableScan(table=[[default, table2_n8]], table:alias=[table2_n8])
 
 PLAN VECTORIZATION:
@@ -10271,7 +10277,7 @@ EXPLAIN select * from table3_n1;
 EXPLAIN CBO select * from table3_n1;
 
 EXPLAIN VECTORIZED select * from table3_n1;
-CBO PLAN:HiveProject(x=[$0])
+CBO PLAN:HiveProject(table3_n1.x=[$0])
   HiveTableScan(table=[[default, table3_n1]], table:alias=[table3_n1])
 
 PLAN VECTORIZATION:
@@ -10325,7 +10331,7 @@ EXPLAIN select * from table4_n0;
 EXPLAIN CBO select * from table4_n0;
 
 EXPLAIN VECTORIZED select * from table4_n0;
-CBO PLAN:HiveProject(x=[$0], y=[$1])
+CBO PLAN:HiveProject(table4_n0.x=[$0], table4_n0.y=[$1])
   HiveTableScan(table=[[default, table4_n0]], table:alias=[table4_n0])
 
 PLAN VECTORIZATION:
@@ -10379,7 +10385,7 @@ EXPLAIN select * from table6_n3;
 EXPLAIN CBO select * from table6_n3;
 
 EXPLAIN VECTORIZED select * from table6_n3;
-CBO PLAN:HiveProject(x=[$0], y=[$1])
+CBO PLAN:HiveProject(table6_n3.x=[$0], table6_n3.y=[$1])
   HiveTableScan(table=[[default, table6_n3]], table:alias=[table6_n3])
 
 PLAN VECTORIZATION:
@@ -10433,7 +10439,7 @@ EXPLAIN select * from table8;
 EXPLAIN CBO select * from table8;
 
 EXPLAIN VECTORIZED select * from table8;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table8.a=[$0], table8.b=[$1])
   HiveTableScan(table=[[default, table8]], table:alias=[table8])
 
 PLAN VECTORIZATION:
@@ -10487,7 +10493,7 @@ EXPLAIN select * from table16;
 EXPLAIN CBO select * from table16;
 
 EXPLAIN VECTORIZED select * from table16;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table16.a=[$0], table16.b=[$1])
   HiveTableScan(table=[[default, table16]], table:alias=[table16])
 
 PLAN VECTORIZATION:
@@ -10542,7 +10548,7 @@ EXPLAIN select * from table18;
 EXPLAIN CBO select * from table18;
 
 EXPLAIN VECTORIZED select * from table18;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table18.a=[$0], table18.b=[$1])
   HiveTableScan(table=[[default, table18]], table:alias=[table18])
 
 PLAN VECTORIZATION:
@@ -10647,7 +10653,7 @@ EXPLAIN CBO select * from table2_n8;
 
 
 EXPLAIN VECTORIZED select * from table2_n8;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table2_n8.a=[$0], table2_n8.b=[$1])
   HiveTableScan(table=[[default, table2_n8]], table:alias=[table2_n8])
 
 PLAN VECTORIZATION:
@@ -10700,7 +10706,7 @@ EXPLAIN select * from table3_n1;
 EXPLAIN CBO select * from table3_n1;
 
 EXPLAIN VECTORIZED select * from table3_n1;
-CBO PLAN:HiveProject(x=[$0])
+CBO PLAN:HiveProject(table3_n1.x=[$0])
   HiveTableScan(table=[[default, table3_n1]], table:alias=[table3_n1])
 
 PLAN VECTORIZATION:
@@ -10754,7 +10760,7 @@ EXPLAIN select * from table6_n3;
 EXPLAIN CBO select * from table6_n3;
 
 EXPLAIN VECTORIZED select * from table6_n3;
-CBO PLAN:HiveProject(x=[$0], y=[$1])
+CBO PLAN:HiveProject(table6_n3.x=[$0], table6_n3.y=[$1])
   HiveTableScan(table=[[default, table6_n3]], table:alias=[table6_n3])
 
 PLAN VECTORIZATION:
@@ -10809,7 +10815,7 @@ EXPLAIN select * from table8;
 EXPLAIN CBO select * from table8;
 
 EXPLAIN VECTORIZED select * from table8;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table8.a=[$0], table8.b=[$1])
   HiveTableScan(table=[[default, table8]], table:alias=[table8])
 
 PLAN VECTORIZATION:
@@ -10863,7 +10869,7 @@ EXPLAIN select * from table16;
 EXPLAIN CBO select * from table16;
 
 EXPLAIN VECTORIZED select * from table16;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table16.a=[$0], table16.b=[$1])
   HiveTableScan(table=[[default, table16]], table:alias=[table16])
 
 PLAN VECTORIZATION:
@@ -10918,7 +10924,7 @@ EXPLAIN select * from table18;
 EXPLAIN CBO select * from table18;
 
 EXPLAIN VECTORIZED select * from table18;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table18.a=[$0], table18.b=[$1])
   HiveTableScan(table=[[default, table18]], table:alias=[table18])
 
 PLAN VECTORIZATION:
@@ -10991,7 +10997,7 @@ EXPLAIN CBO select * from table12;
 
 
 EXPLAIN VECTORIZED select * from table12;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table12.a=[$0], table12.b=[$1])
   HiveTableScan(table=[[default, table12]], table:alias=[table12])
 
 PLAN VECTORIZATION:
@@ -11046,7 +11052,7 @@ EXPLAIN select * from table13;
 EXPLAIN CBO select * from table13;
 
 EXPLAIN VECTORIZED select * from table13;
-CBO PLAN:HiveProject(b=[$0], a=[$1])
+CBO PLAN:HiveProject(table13.b=[$0], table13.a=[$1])
   HiveTableScan(table=[[default, table13]], table:alias=[table13])
 
 PLAN VECTORIZATION:
@@ -11111,7 +11117,7 @@ EXPLAIN CBO select * from table12;
 
 
 EXPLAIN VECTORIZED select * from table12;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table12.a=[$0], table12.b=[$1])
   HiveTableScan(table=[[default, table12]], table:alias=[table12])
 
 PLAN VECTORIZATION:
@@ -11194,7 +11200,7 @@ EXPLAIN CBO select * from DbConstraint.Table2;
 
 
 EXPLAIN VECTORIZED select * from DbConstraint.Table2;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table2.a=[$0], table2.b=[$1])
   HiveTableScan(table=[[dbconstraint, table2]], table:alias=[table2])
 
 PLAN VECTORIZATION:
@@ -11248,7 +11254,7 @@ EXPLAIN select * from DbConstraint.Table2;
 EXPLAIN CBO select * from DbConstraint.Table2;
 
 EXPLAIN VECTORIZED select * from DbConstraint.Table2;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table2.a=[$0], table2.b=[$1])
   HiveTableScan(table=[[dbconstraint, table2]], table:alias=[table2])
 
 PLAN VECTORIZATION:
@@ -11313,7 +11319,7 @@ EXPLAIN CBO select * from DbConstraint.Table2;
 
 
 EXPLAIN VECTORIZED select * from DbConstraint.Table2;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table2.a=[$0], table2.b=[$1])
   HiveTableScan(table=[[dbconstraint, table2]], table:alias=[table2])
 
 PLAN VECTORIZATION:
@@ -11367,7 +11373,7 @@ EXPLAIN select * from DbConstraint.Table2;
 EXPLAIN CBO select * from DbConstraint.Table2;
 
 EXPLAIN VECTORIZED select * from DbConstraint.Table2;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table2.a=[$0], table2.b=[$1])
   HiveTableScan(table=[[dbconstraint, table2]], table:alias=[table2])
 
 PLAN VECTORIZATION:
@@ -11429,7 +11435,7 @@ EXPLAIN select * from DbConstraint.Table2;
 EXPLAIN CBO select * from DbConstraint.Table2;
 
 EXPLAIN VECTORIZED select * from DbConstraint.Table2;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table2.a=[$0], table2.b=[$1])
   HiveTableScan(table=[[dbconstraint, table2]], table:alias=[table2])
 
 PLAN VECTORIZATION:
@@ -11491,7 +11497,7 @@ EXPLAIN select * from DbConstraint.Table2;
 EXPLAIN CBO select * from DbConstraint.Table2;
 
 EXPLAIN VECTORIZED select * from DbConstraint.Table2;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table2.a=[$0], table2.b=[$1])
   HiveTableScan(table=[[dbconstraint, table2]], table:alias=[table2])
 
 PLAN VECTORIZATION:
@@ -11574,7 +11580,7 @@ EXPLAIN CBO select * from table23;
 
 
 EXPLAIN VECTORIZED select * from table23;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(table23.a=[$0], table23.b=[$1])
   HiveTableScan(table=[[default, table23]], table:alias=[table23])
 
 PLAN VECTORIZATION:
diff --git a/ql/src/test/results/clientpositive/llap/constraints_optimization.q.out b/ql/src/test/results/clientpositive/llap/constraints_optimization.q.out
index aacb7d63e3d..93b9b2ef49a 100644
--- a/ql/src/test/results/clientpositive/llap/constraints_optimization.q.out
+++ b/ql/src/test/results/clientpositive/llap/constraints_optimization.q.out
@@ -2239,13 +2239,14 @@ POSTHOOK: Input: default@customer
 POSTHOOK: Input: default@store_sales
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{1}])
-  HiveJoin(condition=[=($0, $8)], joinType=[inner], algorithm=[none], cost=[not available])
-    HiveProject(c_customer_sk=[$0], c_customer_id=[$1], c_first_name=[$8], c_last_name=[$9], c_preferred_cust_flag=[$10], c_birth_country=[$14], c_login=[$15], c_email_address=[$16])
-      HiveTableScan(table=[[default, customer]], table:alias=[customer])
-    HiveProject(ss_customer_sk=[$3])
-      HiveFilter(condition=[IS NOT NULL($3)])
-        HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales])
+HiveProject(c_customer_id=[$0])
+  HiveAggregate(group=[{1}])
+    HiveJoin(condition=[=($0, $8)], joinType=[inner], algorithm=[none], cost=[not available])
+      HiveProject(c_customer_sk=[$0], c_customer_id=[$1], c_first_name=[$8], c_last_name=[$9], c_preferred_cust_flag=[$10], c_birth_country=[$14], c_login=[$15], c_email_address=[$16])
+        HiveTableScan(table=[[default, customer]], table:alias=[customer])
+      HiveProject(ss_customer_sk=[$3])
+        HiveFilter(condition=[IS NOT NULL($3)])
+          HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales])
 
 PREHOOK: query: explain cbo
           select c_customer_id
@@ -2280,13 +2281,14 @@ POSTHOOK: Input: default@customer
 POSTHOOK: Input: default@store_sales
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{2}])
-  HiveJoin(condition=[=($1, $0)], joinType=[inner], algorithm=[none], cost=[not available])
-    HiveProject(ss_customer_sk=[$3])
-      HiveFilter(condition=[IS NOT NULL($3)])
-        HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales])
-    HiveProject(c_customer_sk=[$0], c_customer_id=[$1], c_first_name=[$8], c_last_name=[$9], c_preferred_cust_flag=[$10], c_birth_country=[$14], c_login=[$15], c_email_address=[$16])
-      HiveTableScan(table=[[default, customer]], table:alias=[customer])
+HiveProject(c_customer_id=[$0])
+  HiveAggregate(group=[{2}])
+    HiveJoin(condition=[=($1, $0)], joinType=[inner], algorithm=[none], cost=[not available])
+      HiveProject(ss_customer_sk=[$3])
+        HiveFilter(condition=[IS NOT NULL($3)])
+          HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales])
+      HiveProject(c_customer_sk=[$0], c_customer_id=[$1], c_first_name=[$8], c_last_name=[$9], c_preferred_cust_flag=[$10], c_birth_country=[$14], c_login=[$15], c_email_address=[$16])
+        HiveTableScan(table=[[default, customer]], table:alias=[customer])
 
 PREHOOK: query: explain cbo
     with year_total as (
@@ -2354,7 +2356,7 @@ POSTHOOK: Input: default@store_sales
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortLimit(sort0=[$0], dir0=[ASC], fetch=[100])
-  HiveProject(customer_preferred_cust_flag=[$1])
+  HiveProject(t_s_secyear.customer_preferred_cust_flag=[$1])
     HiveAggregate(group=[{1, 4}])
       HiveJoin(condition=[=($0, $8)], joinType=[inner], algorithm=[none], cost=[not available])
         HiveProject(c_customer_sk=[$0], c_customer_id=[$1], c_first_name=[$8], c_last_name=[$9], c_preferred_cust_flag=[$10], c_birth_country=[$14], c_login=[$15], c_email_address=[$16])
@@ -2429,7 +2431,7 @@ POSTHOOK: Input: default@store_sales
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortLimit(sort0=[$0], dir0=[ASC], fetch=[100])
-  HiveProject(customer_preferred_cust_flag=[$1])
+  HiveProject(t_s_secyear.customer_preferred_cust_flag=[$1])
     HiveAggregate(group=[{1, 4}])
       HiveJoin(condition=[=($0, $8)], joinType=[inner], algorithm=[none], cost=[not available])
         HiveProject(c_customer_sk=[$0], c_customer_id=[$1], c_first_name=[$8], c_last_name=[$9], c_preferred_cust_flag=[$10], c_birth_country=[$14], c_login=[$15], c_email_address=[$16])
@@ -2588,7 +2590,7 @@ POSTHOOK: Input: default@store_sales
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortLimit(sort0=[$0], dir0=[ASC], fetch=[100])
-  HiveProject(customer_preferred_cust_flag=[$1])
+  HiveProject(t_s_secyear.customer_preferred_cust_flag=[$1])
     HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject(c_customer_id=[$0], c_preferred_cust_flag=[$1])
         HiveAggregate(group=[{1, 4}])
@@ -2659,12 +2661,13 @@ POSTHOOK: Input: default@customer
 POSTHOOK: Input: default@store_sales
 #### A masked pattern was here ####
 CBO PLAN:
-HiveSemiJoin(condition=[=($0, $1)], joinType=[semi])
-  HiveProject(c_customer_sk=[$0])
-    HiveTableScan(table=[[default, customer]], table:alias=[customer])
-  HiveProject(ss_customer_sk=[$3])
-    HiveFilter(condition=[IS NOT NULL($3)])
-      HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales])
+HiveProject(c_customer_sk=[$0])
+  HiveSemiJoin(condition=[=($0, $1)], joinType=[semi])
+    HiveProject(c_customer_sk=[$0])
+      HiveTableScan(table=[[default, customer]], table:alias=[customer])
+    HiveProject(ss_customer_sk=[$3])
+      HiveFilter(condition=[IS NOT NULL($3)])
+        HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales])
 
 PREHOOK: query: EXPLAIN	CBO
 SELECT
@@ -2815,13 +2818,14 @@ POSTHOOK: Input: default@customer
 POSTHOOK: Input: default@store_sales
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{1}])
-  HiveJoin(condition=[=($0, $8)], joinType=[inner], algorithm=[none], cost=[not available])
-    HiveProject(c_customer_sk=[$0], c_customer_id=[$1], c_first_name=[$8], c_last_name=[$9], c_preferred_cust_flag=[$10], c_birth_country=[$14], c_login=[$15], c_email_address=[$16])
-      HiveTableScan(table=[[default, customer]], table:alias=[customer])
-    HiveProject(ss_customer_sk=[$3])
-      HiveFilter(condition=[IS NOT NULL($3)])
-        HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales])
+HiveProject(c_customer_id=[$0])
+  HiveAggregate(group=[{1}])
+    HiveJoin(condition=[=($0, $8)], joinType=[inner], algorithm=[none], cost=[not available])
+      HiveProject(c_customer_sk=[$0], c_customer_id=[$1], c_first_name=[$8], c_last_name=[$9], c_preferred_cust_flag=[$10], c_birth_country=[$14], c_login=[$15], c_email_address=[$16])
+        HiveTableScan(table=[[default, customer]], table:alias=[customer])
+      HiveProject(ss_customer_sk=[$3])
+        HiveFilter(condition=[IS NOT NULL($3)])
+          HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales])
 
 PREHOOK: query: explain cbo select c_customer_sk from
  (select c_first_name, c_customer_sk ,d_date solddate,count(*) cnt
@@ -3033,19 +3037,20 @@ POSTHOOK: Input: default@date_dim
 POSTHOOK: Input: default@store_sales
 #### A masked pattern was here ####
 CBO PLAN:
-HiveFilter(condition=[>($3, 4)])
-  HiveProject($f0=[$1], $f1=[$2], d_date=[$0], $f3=[$3])
-    HiveAggregate(group=[{3, 5, 6}], agg#0=[count()])
-      HiveJoin(condition=[=($1, $4)], joinType=[inner], algorithm=[none], cost=[not available])
-        HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
-          HiveProject(ss_sold_date_sk=[$0], ss_item_sk=[$2])
-            HiveFilter(condition=[IS NOT NULL($0)])
-              HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales])
-          HiveProject(d_date_sk=[$0], d_date=[$2])
-            HiveFilter(condition=[IS NOT NULL($0)])
-              HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim])
-        HiveProject(c_customer_sk=[$0], $f0=[substr($8, 1, 30)], $f1=[log2($0)])
-          HiveTableScan(table=[[default, customer]], table:alias=[customer])
+HiveProject(subq._c0=[$0], subq._c1=[$1], subq.solddate=[$2], subq.cnt=[$3])
+  HiveFilter(condition=[>($3, 4)])
+    HiveProject($f0=[$1], $f1=[$2], d_date=[$0], $f3=[$3])
+      HiveAggregate(group=[{3, 5, 6}], agg#0=[count()])
+        HiveJoin(condition=[=($1, $4)], joinType=[inner], algorithm=[none], cost=[not available])
+          HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
+            HiveProject(ss_sold_date_sk=[$0], ss_item_sk=[$2])
+              HiveFilter(condition=[IS NOT NULL($0)])
+                HiveTableScan(table=[[default, store_sales]], table:alias=[store_sales])
+            HiveProject(d_date_sk=[$0], d_date=[$2])
+              HiveFilter(condition=[IS NOT NULL($0)])
+                HiveTableScan(table=[[default, date_dim]], table:alias=[date_dim])
+          HiveProject(c_customer_sk=[$0], $f0=[substr($8, 1, 30)], $f1=[log2($0)])
+            HiveTableScan(table=[[default, customer]], table:alias=[customer])
 
 PREHOOK: query: -- group by with keys consisting of pk from multiple tables with extra columns from both side
  explain cbo select c_customer_sk from
@@ -3182,10 +3187,11 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@web_sales
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{}], agg#0=[count()])
-  HiveProject(ws_order_number=[$0])
-    HiveAggregate(group=[{0}])
-      HiveTableScan(table=[[default, web_sales]], table:alias=[web_sales])
+HiveProject(_c0=[$0])
+  HiveAggregate(group=[{}], agg#0=[count()])
+    HiveProject(ws_order_number=[$0])
+      HiveAggregate(group=[{0}])
+        HiveTableScan(table=[[default, web_sales]], table:alias=[web_sales])
 
 PREHOOK: query: select count(distinct ws_order_number) from web_sales
 PREHOOK: type: QUERY
diff --git a/ql/src/test/results/clientpositive/llap/count_distinct_subquery.q.out b/ql/src/test/results/clientpositive/llap/count_distinct_subquery.q.out
index 445fea9c764..a351d0367e8 100644
--- a/ql/src/test/results/clientpositive/llap/count_distinct_subquery.q.out
+++ b/ql/src/test/results/clientpositive/llap/count_distinct_subquery.q.out
@@ -48,7 +48,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t_test
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(_o__c0=[1])
+HiveProject(_c0=[1])
   HiveProject($f0=[$0])
     HiveAggregate(group=[{}], agg#0=[count($0)])
       HiveProject(a=[$0])
@@ -64,10 +64,11 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t_test
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{}], agg#0=[count($0)])
-  HiveProject(a=[$0])
-    HiveAggregate(group=[{0}])
-      HiveTableScan(table=[[default, t_test]], table:alias=[t_test])
+HiveProject(b=[$0])
+  HiveAggregate(group=[{}], agg#0=[count($0)])
+    HiveProject(a=[$0])
+      HiveAggregate(group=[{0}])
+        HiveTableScan(table=[[default, t_test]], table:alias=[t_test])
 
 PREHOOK: query: explain select 1 from (select count(distinct a) from t_test) x
 PREHOOK: type: QUERY
diff --git a/ql/src/test/results/clientpositive/llap/create_table_explain_ddl.q.out b/ql/src/test/results/clientpositive/llap/create_table_explain_ddl.q.out
index 3916165778c..3f87095e155 100644
--- a/ql/src/test/results/clientpositive/llap/create_table_explain_ddl.q.out
+++ b/ql/src/test/results/clientpositive/llap/create_table_explain_ddl.q.out
@@ -38,7 +38,7 @@ EXPLAIN select * from alter1;
 EXPLAIN CBO select * from alter1;
 
 EXPLAIN VECTORIZED select * from alter1;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(alter1.a=[$0], alter1.b=[$1])
   HiveTableScan(table=[[default, alter1]], table:alias=[alter1])
 
 PLAN VECTORIZATION:
@@ -102,7 +102,7 @@ EXPLAIN select * from alter1;
 EXPLAIN CBO select * from alter1;
 
 EXPLAIN VECTORIZED select * from alter1;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(alter1.a=[$0], alter1.b=[$1])
   HiveTableScan(table=[[default, alter1]], table:alias=[alter1])
 
 PLAN VECTORIZATION:
@@ -167,7 +167,7 @@ EXPLAIN select * from alter1;
 EXPLAIN CBO select * from alter1;
 
 EXPLAIN VECTORIZED select * from alter1;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(alter1.a=[$0], alter1.b=[$1])
   HiveTableScan(table=[[default, alter1]], table:alias=[alter1])
 
 PLAN VECTORIZATION:
@@ -232,7 +232,7 @@ EXPLAIN select * from alter1;
 EXPLAIN CBO select * from alter1;
 
 EXPLAIN VECTORIZED select * from alter1;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(alter1.a=[$0], alter1.b=[$1])
   HiveTableScan(table=[[default, alter1]], table:alias=[alter1])
 
 PLAN VECTORIZATION:
@@ -297,7 +297,7 @@ EXPLAIN select * from alter1;
 EXPLAIN CBO select * from alter1;
 
 EXPLAIN VECTORIZED select * from alter1;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(alter1.a=[$0], alter1.b=[$1])
   HiveTableScan(table=[[default, alter1]], table:alias=[alter1])
 
 PLAN VECTORIZATION:
@@ -364,7 +364,7 @@ EXPLAIN select * from alter1;
 EXPLAIN CBO select * from alter1;
 
 EXPLAIN VECTORIZED select * from alter1;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(alter1.a=[$0], alter1.b=[$1])
   HiveTableScan(table=[[default, alter1]], table:alias=[alter1])
 
 PLAN VECTORIZATION:
@@ -432,7 +432,7 @@ EXPLAIN select * from alter1;
 EXPLAIN CBO select * from alter1;
 
 EXPLAIN VECTORIZED select * from alter1;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(alter1.a=[$0], alter1.b=[$1])
   HiveTableScan(table=[[default, alter1]], table:alias=[alter1])
 
 PLAN VECTORIZATION:
@@ -516,7 +516,7 @@ EXPLAIN select * from alter1_db.alter1;
 EXPLAIN CBO select * from alter1_db.alter1;
 
 EXPLAIN VECTORIZED select * from alter1_db.alter1;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(alter1.a=[$0], alter1.b=[$1])
   HiveTableScan(table=[[alter1_db, alter1]], table:alias=[alter1])
 
 PLAN VECTORIZATION:
@@ -580,7 +580,7 @@ EXPLAIN select * from alter1_db.alter1;
 EXPLAIN CBO select * from alter1_db.alter1;
 
 EXPLAIN VECTORIZED select * from alter1_db.alter1;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(alter1.a=[$0], alter1.b=[$1])
   HiveTableScan(table=[[alter1_db, alter1]], table:alias=[alter1])
 
 PLAN VECTORIZATION:
@@ -645,7 +645,7 @@ EXPLAIN select * from alter1_db.alter1;
 EXPLAIN CBO select * from alter1_db.alter1;
 
 EXPLAIN VECTORIZED select * from alter1_db.alter1;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(alter1.a=[$0], alter1.b=[$1])
   HiveTableScan(table=[[alter1_db, alter1]], table:alias=[alter1])
 
 PLAN VECTORIZATION:
@@ -710,7 +710,7 @@ EXPLAIN select * from alter1_db.alter1;
 EXPLAIN CBO select * from alter1_db.alter1;
 
 EXPLAIN VECTORIZED select * from alter1_db.alter1;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(alter1.a=[$0], alter1.b=[$1])
   HiveTableScan(table=[[alter1_db, alter1]], table:alias=[alter1])
 
 PLAN VECTORIZATION:
@@ -775,7 +775,7 @@ EXPLAIN select * from alter1_db.alter1;
 EXPLAIN CBO select * from alter1_db.alter1;
 
 EXPLAIN VECTORIZED select * from alter1_db.alter1;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(alter1.a=[$0], alter1.b=[$1])
   HiveTableScan(table=[[alter1_db, alter1]], table:alias=[alter1])
 
 PLAN VECTORIZATION:
@@ -842,7 +842,7 @@ EXPLAIN select * from alter1_db.alter1;
 EXPLAIN CBO select * from alter1_db.alter1;
 
 EXPLAIN VECTORIZED select * from alter1_db.alter1;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(alter1.a=[$0], alter1.b=[$1])
   HiveTableScan(table=[[alter1_db, alter1]], table:alias=[alter1])
 
 PLAN VECTORIZATION:
@@ -910,7 +910,7 @@ EXPLAIN select * from alter1_db.alter1;
 EXPLAIN CBO select * from alter1_db.alter1;
 
 EXPLAIN VECTORIZED select * from alter1_db.alter1;
-CBO PLAN:HiveProject(a=[$0], b=[$1])
+CBO PLAN:HiveProject(alter1.a=[$0], alter1.b=[$1])
   HiveTableScan(table=[[alter1_db, alter1]], table:alias=[alter1])
 
 PLAN VECTORIZATION:
@@ -992,7 +992,7 @@ EXPLAIN select * from alter2;
 EXPLAIN CBO select * from alter2;
 
 EXPLAIN VECTORIZED select * from alter2;
-CBO PLAN:HiveProject(a=[$0], b=[$1], insertdate=[$2])
+CBO PLAN:HiveProject(alter2.a=[$0], alter2.b=[$1], alter2.insertdate=[$2])
   HiveTableScan(table=[[default, alter2]], table:alias=[alter2])
 
 PLAN VECTORIZATION:
@@ -1066,7 +1066,7 @@ EXPLAIN select * from alter2;
 EXPLAIN CBO select * from alter2;
 
 EXPLAIN VECTORIZED select * from alter2;
-CBO PLAN:HiveProject(a=[$0], b=[$1], insertdate=[$2])
+CBO PLAN:HiveProject(alter2.a=[$0], alter2.b=[$1], alter2.insertdate=[$2])
   HiveTableScan(table=[[default, alter2]], table:alias=[alter2])
 
 PLAN VECTORIZATION:
@@ -1145,7 +1145,7 @@ EXPLAIN select * from alter2;
 EXPLAIN CBO select * from alter2;
 
 EXPLAIN VECTORIZED select * from alter2;
-CBO PLAN:HiveProject(a=[$0], b=[$1], insertdate=[$2])
+CBO PLAN:HiveProject(alter2.a=[$0], alter2.b=[$1], alter2.insertdate=[$2])
   HiveTableScan(table=[[default, alter2]], table:alias=[alter2])
 
 PLAN VECTORIZATION:
@@ -1227,7 +1227,7 @@ EXPLAIN select * from alter2;
 EXPLAIN CBO select * from alter2;
 
 EXPLAIN VECTORIZED select * from alter2;
-CBO PLAN:HiveProject(a=[$0], b=[$1], insertdate=[$2])
+CBO PLAN:HiveProject(alter2.a=[$0], alter2.b=[$1], alter2.insertdate=[$2])
   HiveTableScan(table=[[default, alter2]], table:alias=[alter2])
 
 PLAN VECTORIZATION:
@@ -1301,7 +1301,7 @@ EXPLAIN select * from alter2;
 EXPLAIN CBO select * from alter2;
 
 EXPLAIN VECTORIZED select * from alter2;
-CBO PLAN:HiveProject(a=[$0], b=[$1], insertdate=[$2])
+CBO PLAN:HiveProject(alter2.a=[$0], alter2.b=[$1], alter2.insertdate=[$2])
   HiveTableScan(table=[[default, alter2]], table:alias=[alter2])
 
 PLAN VECTORIZATION:
@@ -1380,7 +1380,7 @@ EXPLAIN select * from alter2;
 EXPLAIN CBO select * from alter2;
 
 EXPLAIN VECTORIZED select * from alter2;
-CBO PLAN:HiveProject(a=[$0], b=[$1], insertdate=[$2])
+CBO PLAN:HiveProject(alter2.a=[$0], alter2.b=[$1], alter2.insertdate=[$2])
   HiveTableScan(table=[[default, alter2]], table:alias=[alter2])
 
 PLAN VECTORIZATION:
@@ -1486,7 +1486,7 @@ EXPLAIN select * from alter2;
 EXPLAIN CBO select * from alter2;
 
 EXPLAIN VECTORIZED select * from alter2;
-CBO PLAN:HiveProject(a=[$0], b=[$1], insertdate=[$2])
+CBO PLAN:HiveProject(alter2.a=[$0], alter2.b=[$1], alter2.insertdate=[$2])
   HiveTableScan(table=[[alter2_db, alter2]], table:alias=[alter2])
 
 PLAN VECTORIZATION:
@@ -1560,7 +1560,7 @@ EXPLAIN select * from alter2;
 EXPLAIN CBO select * from alter2;
 
 EXPLAIN VECTORIZED select * from alter2;
-CBO PLAN:HiveProject(a=[$0], b=[$1], insertdate=[$2])
+CBO PLAN:HiveProject(alter2.a=[$0], alter2.b=[$1], alter2.insertdate=[$2])
   HiveTableScan(table=[[alter2_db, alter2]], table:alias=[alter2])
 
 PLAN VECTORIZATION:
@@ -1639,7 +1639,7 @@ EXPLAIN select * from alter2;
 EXPLAIN CBO select * from alter2;
 
 EXPLAIN VECTORIZED select * from alter2;
-CBO PLAN:HiveProject(a=[$0], b=[$1], insertdate=[$2])
+CBO PLAN:HiveProject(alter2.a=[$0], alter2.b=[$1], alter2.insertdate=[$2])
   HiveTableScan(table=[[alter2_db, alter2]], table:alias=[alter2])
 
 PLAN VECTORIZATION:
@@ -1721,7 +1721,7 @@ EXPLAIN select * from alter2;
 EXPLAIN CBO select * from alter2;
 
 EXPLAIN VECTORIZED select * from alter2;
-CBO PLAN:HiveProject(a=[$0], b=[$1], insertdate=[$2])
+CBO PLAN:HiveProject(alter2.a=[$0], alter2.b=[$1], alter2.insertdate=[$2])
   HiveTableScan(table=[[alter2_db, alter2]], table:alias=[alter2])
 
 PLAN VECTORIZATION:
@@ -1795,7 +1795,7 @@ EXPLAIN select * from alter2;
 EXPLAIN CBO select * from alter2;
 
 EXPLAIN VECTORIZED select * from alter2;
-CBO PLAN:HiveProject(a=[$0], b=[$1], insertdate=[$2])
+CBO PLAN:HiveProject(alter2.a=[$0], alter2.b=[$1], alter2.insertdate=[$2])
   HiveTableScan(table=[[alter2_db, alter2]], table:alias=[alter2])
 
 PLAN VECTORIZATION:
@@ -1874,7 +1874,7 @@ EXPLAIN select * from alter2;
 EXPLAIN CBO select * from alter2;
 
 EXPLAIN VECTORIZED select * from alter2;
-CBO PLAN:HiveProject(a=[$0], b=[$1], insertdate=[$2])
+CBO PLAN:HiveProject(alter2.a=[$0], alter2.b=[$1], alter2.insertdate=[$2])
   HiveTableScan(table=[[alter2_db, alter2]], table:alias=[alter2])
 
 PLAN VECTORIZATION:
diff --git a/ql/src/test/results/clientpositive/llap/create_view_when_mv_exists.q.out b/ql/src/test/results/clientpositive/llap/create_view_when_mv_exists.q.out
index 345858cbdcd..13365cb9e2a 100644
--- a/ql/src/test/results/clientpositive/llap/create_view_when_mv_exists.q.out
+++ b/ql/src/test/results/clientpositive/llap/create_view_when_mv_exists.q.out
@@ -45,7 +45,7 @@ POSTHOOK: Input: default@t1
 POSTHOOK: Output: database:default
 POSTHOOK: Output: default@v1
 CBO PLAN:
-HiveProject($f0=[CAST(10):INTEGER])
+HiveProject(col0=[CAST(10):INTEGER])
   HiveFilter(condition=[=($0, 10)])
     HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
@@ -79,7 +79,7 @@ POSTHOOK: Input: default@t1
 POSTHOOK: Input: default@v1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject($f0=[CAST(10):INTEGER])
+HiveProject(v1.col0=[CAST(10):INTEGER])
   HiveFilter(condition=[=(10, $0)])
     HiveTableScan(table=[[default, mv1]], table:alias=[default.mv1])
 
diff --git a/ql/src/test/results/clientpositive/llap/create_view_when_mv_exists2.q.out b/ql/src/test/results/clientpositive/llap/create_view_when_mv_exists2.q.out
index aaa59d9a07d..1d397ea03ec 100644
--- a/ql/src/test/results/clientpositive/llap/create_view_when_mv_exists2.q.out
+++ b/ql/src/test/results/clientpositive/llap/create_view_when_mv_exists2.q.out
@@ -46,10 +46,11 @@ POSTHOOK: Input: default@t1
 POSTHOOK: Output: database:default
 POSTHOOK: Output: default@v1
 CBO PLAN:
-HiveAggregate(group=[{0}])
-  HiveProject($f0=[CAST(10):INTEGER])
-    HiveFilter(condition=[=($0, 10)])
-      HiveTableScan(table=[[default, t1]], table:alias=[t1])
+HiveProject(col0=[$0])
+  HiveAggregate(group=[{0}])
+    HiveProject($f0=[CAST(10):INTEGER])
+      HiveFilter(condition=[=($0, 10)])
+        HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
 PREHOOK: query: create view v1 as
 select sub.* from (select * from t1 where col0 > 2 union select * from t1 where col0 = 0) sub
@@ -79,10 +80,11 @@ POSTHOOK: Input: default@t1
 POSTHOOK: Input: default@v1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{0}])
-  HiveProject($f0=[CAST(10):INTEGER])
-    HiveFilter(condition=[=($0, 10)])
-      HiveTableScan(table=[[default, t1]], table:alias=[t1])
+HiveProject(v1.col0=[$0])
+  HiveAggregate(group=[{0}])
+    HiveProject($f0=[CAST(10):INTEGER])
+      HiveFilter(condition=[=($0, 10)])
+        HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
 PREHOOK: query: select * from v1
 PREHOOK: type: QUERY
diff --git a/ql/src/test/results/clientpositive/llap/cte_cbo_plan_json.q.out b/ql/src/test/results/clientpositive/llap/cte_cbo_plan_json.q.out
index 6e0b35fa900..81e196924ae 100644
--- a/ql/src/test/results/clientpositive/llap/cte_cbo_plan_json.q.out
+++ b/ql/src/test/results/clientpositive/llap/cte_cbo_plan_json.q.out
@@ -34,4 +34,4 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@cte_suggestion_0
 POSTHOOK: Input: default@emps
 #### A masked pattern was here ####
-{"CBOPlan":"{\n  \"rels\": [\n    {\n      \"id\": \"0\",\n      \"relOp\": \"org.apache.hadoop.hive.ql.optimizer.calcite.reloperators.HiveTableScan\",\n      \"table\": [\n        \"default\",\n        \"emps\"\n      ],\n      \"table:alias\": \"e\",\n      \"inputs\": [],\n      \"rowCount\": 1.0,\n      \"avgRowSize\": 161.0,\n      \"rowType\": {\n        \"fields\": [\n          {\n            \"type\": \"INTEGER\",\n            \"nullable\": true,\n            \"name\": \"empid\"\ [...]
+{"CBOPlan":"{\n  \"rels\": [\n    {\n      \"id\": \"0\",\n      \"relOp\": \"org.apache.hadoop.hive.ql.optimizer.calcite.reloperators.HiveTableScan\",\n      \"table\": [\n        \"default\",\n        \"emps\"\n      ],\n      \"table:alias\": \"e\",\n      \"inputs\": [],\n      \"rowCount\": 1.0,\n      \"avgRowSize\": 161.0,\n      \"rowType\": {\n        \"fields\": [\n          {\n            \"type\": \"INTEGER\",\n            \"nullable\": true,\n            \"name\": \"empid\"\ [...]
diff --git a/ql/src/test/results/clientpositive/llap/cte_cbo_rewrite_0.q.out b/ql/src/test/results/clientpositive/llap/cte_cbo_rewrite_0.q.out
index a5bf8fc8d1f..a3bf50d1cde 100644
--- a/ql/src/test/results/clientpositive/llap/cte_cbo_rewrite_0.q.out
+++ b/ql/src/test/results/clientpositive/llap/cte_cbo_rewrite_0.q.out
@@ -329,29 +329,30 @@ POSTHOOK: Input: default@depts
 POSTHOOK: Input: default@emps
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{0, 1}])
-  HiveProject(name=[$0], _o__c1=[$1])
-    HiveUnion(all=[true])
-      HiveProject(name=[$0], _o__c1=[_UTF-16LE'HIGH':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
-        HiveFilter(condition=[>=(CAST(/($1, $2)):DECIMAL(12, 6), 100000:DECIMAL(6, 0))])
-          HiveAggregate(group=[{3}], agg#0=[sum($1)], agg#1=[count($1)])
-            HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
-              HiveProject(deptno=[$1], salary=[$3])
-                HiveFilter(condition=[IS NOT NULL($1)])
-                  HiveTableScan(table=[[default, emps]], table:alias=[e])
-              HiveProject(deptno=[$0], name=[$1])
-                HiveFilter(condition=[IS NOT NULL($0)])
-                  HiveTableScan(table=[[default, depts]], table:alias=[d])
-      HiveProject(name=[$0], _o__c1=[_UTF-16LE'LOW':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
-        HiveFilter(condition=[<(CAST(/($1, $2)):DECIMAL(12, 6), 100000:DECIMAL(6, 0))])
-          HiveAggregate(group=[{3}], agg#0=[sum($1)], agg#1=[count($1)])
-            HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
-              HiveProject(deptno=[$1], salary=[$3])
-                HiveFilter(condition=[IS NOT NULL($1)])
-                  HiveTableScan(table=[[default, emps]], table:alias=[e])
-              HiveProject(deptno=[$0], name=[$1])
-                HiveFilter(condition=[IS NOT NULL($0)])
-                  HiveTableScan(table=[[default, depts]], table:alias=[d])
+HiveProject(name=[$0], _c1=[$1])
+  HiveAggregate(group=[{0, 1}])
+    HiveProject(name=[$0], _o__c1=[$1])
+      HiveUnion(all=[true])
+        HiveProject(name=[$0], _o__c1=[_UTF-16LE'HIGH':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
+          HiveFilter(condition=[>=(CAST(/($1, $2)):DECIMAL(12, 6), 100000:DECIMAL(6, 0))])
+            HiveAggregate(group=[{3}], agg#0=[sum($1)], agg#1=[count($1)])
+              HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
+                HiveProject(deptno=[$1], salary=[$3])
+                  HiveFilter(condition=[IS NOT NULL($1)])
+                    HiveTableScan(table=[[default, emps]], table:alias=[e])
+                HiveProject(deptno=[$0], name=[$1])
+                  HiveFilter(condition=[IS NOT NULL($0)])
+                    HiveTableScan(table=[[default, depts]], table:alias=[d])
+        HiveProject(name=[$0], _o__c1=[_UTF-16LE'LOW':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
+          HiveFilter(condition=[<(CAST(/($1, $2)):DECIMAL(12, 6), 100000:DECIMAL(6, 0))])
+            HiveAggregate(group=[{3}], agg#0=[sum($1)], agg#1=[count($1)])
+              HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
+                HiveProject(deptno=[$1], salary=[$3])
+                  HiveFilter(condition=[IS NOT NULL($1)])
+                    HiveTableScan(table=[[default, emps]], table:alias=[e])
+                HiveProject(deptno=[$0], name=[$1])
+                  HiveFilter(condition=[IS NOT NULL($0)])
+                    HiveTableScan(table=[[default, depts]], table:alias=[d])
 
 PREHOOK: query: SELECT d.name, 'HIGH'
 FROM emps e
@@ -660,24 +661,25 @@ POSTHOOK: Input: default@depts
 POSTHOOK: Input: default@emps
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{0, 1}])
-  HiveProject(name=[$0], _o__c1=[$1])
-    HiveUnion(all=[true])
-      HiveProject(name=[$0], _o__c1=[_UTF-16LE'HIGH':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
-        HiveFilter(condition=[>=(CAST(/($1, $2)):DECIMAL(12, 6), 100000:DECIMAL(6, 0))])
-          HiveTableSpool(table=[[cte, cte_suggestion_0]])
-            HiveProject(name=[$0], $f1=[$1], $f2=[$2])
-              HiveAggregate(group=[{3}], agg#0=[sum($1)], agg#1=[count($1)])
-                HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
-                  HiveProject(deptno=[$1], salary=[$3])
-                    HiveFilter(condition=[IS NOT NULL($1)])
-                      HiveTableScan(table=[[default, emps]], table:alias=[e])
-                  HiveProject(deptno=[$0], name=[$1])
-                    HiveFilter(condition=[IS NOT NULL($0)])
-                      HiveTableScan(table=[[default, depts]], table:alias=[d])
-      HiveProject(name=[$0], _o__c1=[_UTF-16LE'LOW':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
-        HiveFilter(condition=[<(CAST(/($1, $2)):DECIMAL(12, 6), 100000:DECIMAL(6, 0))])
-          HiveTableScan(table=[[cte, cte_suggestion_0]], table:alias=[cte_suggestion_0])
+HiveProject(name=[$0], _c1=[$1])
+  HiveAggregate(group=[{0, 1}])
+    HiveProject(name=[$0], _o__c1=[$1])
+      HiveUnion(all=[true])
+        HiveProject(name=[$0], _o__c1=[_UTF-16LE'HIGH':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
+          HiveFilter(condition=[>=(CAST(/($1, $2)):DECIMAL(12, 6), 100000:DECIMAL(6, 0))])
+            HiveTableSpool(table=[[cte, cte_suggestion_0]])
+              HiveProject(name=[$0], $f1=[$1], $f2=[$2])
+                HiveAggregate(group=[{3}], agg#0=[sum($1)], agg#1=[count($1)])
+                  HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
+                    HiveProject(deptno=[$1], salary=[$3])
+                      HiveFilter(condition=[IS NOT NULL($1)])
+                        HiveTableScan(table=[[default, emps]], table:alias=[e])
+                    HiveProject(deptno=[$0], name=[$1])
+                      HiveFilter(condition=[IS NOT NULL($0)])
+                        HiveTableScan(table=[[default, depts]], table:alias=[d])
+        HiveProject(name=[$0], _o__c1=[_UTF-16LE'LOW':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
+          HiveFilter(condition=[<(CAST(/($1, $2)):DECIMAL(12, 6), 100000:DECIMAL(6, 0))])
+            HiveTableScan(table=[[cte, cte_suggestion_0]], table:alias=[cte_suggestion_0])
 
 PREHOOK: query: EXPLAIN CBO
 SELECT * FROM (
@@ -716,17 +718,18 @@ POSTHOOK: Input: default@depts
 POSTHOOK: Input: default@emps
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{0, 1}])
-  HiveProject(name=[$0], salary_range=[_UTF-16LE'HIGH':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
-    HiveFilter(condition=[>=(CAST(/($1, $2)):DECIMAL(12, 6), 100000:DECIMAL(6, 0))])
-      HiveAggregate(group=[{3}], agg#0=[sum($1)], agg#1=[count($1)])
-        HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
-          HiveProject(deptno=[$1], salary=[$3])
-            HiveFilter(condition=[IS NOT NULL($1)])
-              HiveTableScan(table=[[default, emps]], table:alias=[e])
-          HiveProject(deptno=[$0], name=[$1])
-            HiveFilter(condition=[IS NOT NULL($0)])
-              HiveTableScan(table=[[default, depts]], table:alias=[d])
+HiveProject(summary.name=[$0], summary.salary_range=[$1])
+  HiveAggregate(group=[{0, 1}])
+    HiveProject(name=[$0], salary_range=[_UTF-16LE'HIGH':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
+      HiveFilter(condition=[>=(CAST(/($1, $2)):DECIMAL(12, 6), 100000:DECIMAL(6, 0))])
+        HiveAggregate(group=[{3}], agg#0=[sum($1)], agg#1=[count($1)])
+          HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
+            HiveProject(deptno=[$1], salary=[$3])
+              HiveFilter(condition=[IS NOT NULL($1)])
+                HiveTableScan(table=[[default, emps]], table:alias=[e])
+            HiveProject(deptno=[$0], name=[$1])
+              HiveFilter(condition=[IS NOT NULL($0)])
+                HiveTableScan(table=[[default, depts]], table:alias=[d])
 
 PREHOOK: query: SELECT * FROM (
 SELECT d.name, 'HIGH' as salary_range
@@ -801,17 +804,18 @@ POSTHOOK: Input: default@depts
 POSTHOOK: Input: default@emps
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{0, 1}])
-  HiveProject(name=[$0], salary_range=[_UTF-16LE'LOW':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
-    HiveFilter(condition=[<(CAST(/($1, $2)):DECIMAL(12, 6), 100000:DECIMAL(6, 0))])
-      HiveAggregate(group=[{3}], agg#0=[sum($1)], agg#1=[count($1)])
-        HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
-          HiveProject(deptno=[$1], salary=[$3])
-            HiveFilter(condition=[IS NOT NULL($1)])
-              HiveTableScan(table=[[default, emps]], table:alias=[e])
-          HiveProject(deptno=[$0], name=[$1])
-            HiveFilter(condition=[IS NOT NULL($0)])
-              HiveTableScan(table=[[default, depts]], table:alias=[d])
+HiveProject(summary.name=[$0], summary.salary_range=[$1])
+  HiveAggregate(group=[{0, 1}])
+    HiveProject(name=[$0], salary_range=[_UTF-16LE'LOW':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
+      HiveFilter(condition=[<(CAST(/($1, $2)):DECIMAL(12, 6), 100000:DECIMAL(6, 0))])
+        HiveAggregate(group=[{3}], agg#0=[sum($1)], agg#1=[count($1)])
+          HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
+            HiveProject(deptno=[$1], salary=[$3])
+              HiveFilter(condition=[IS NOT NULL($1)])
+                HiveTableScan(table=[[default, emps]], table:alias=[e])
+            HiveProject(deptno=[$0], name=[$1])
+              HiveFilter(condition=[IS NOT NULL($0)])
+                HiveTableScan(table=[[default, depts]], table:alias=[d])
 
 PREHOOK: query: SELECT * FROM (
 SELECT d.name, 'HIGH' as salary_range
diff --git a/ql/src/test/results/clientpositive/llap/cte_join.q.out b/ql/src/test/results/clientpositive/llap/cte_join.q.out
index e1642cba2f0..5087ac89766 100644
--- a/ql/src/test/results/clientpositive/llap/cte_join.q.out
+++ b/ql/src/test/results/clientpositive/llap/cte_join.q.out
@@ -131,13 +131,14 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJoin(condition=[=($0, $1)], joinType=[inner], algorithm=[none], cost=[not available])
-  HiveProject(a=[$0])
-    HiveFilter(condition=[AND(=($1, _UTF-16LE'c'), IS NOT NULL($0))])
-      HiveTableScan(table=[[default, t1]], table:alias=[t1])
-  HiveProject(a=[$0], b=[$1])
-    HiveFilter(condition=[IS NOT NULL($0)])
-      HiveTableScan(table=[[default, t1]], table:alias=[t1])
+HiveProject(s.a=[$0], t1.a=[$1], t1.b=[$2])
+  HiveJoin(condition=[=($0, $1)], joinType=[inner], algorithm=[none], cost=[not available])
+    HiveProject(a=[$0])
+      HiveFilter(condition=[AND(=($1, _UTF-16LE'c'), IS NOT NULL($0))])
+        HiveTableScan(table=[[default, t1]], table:alias=[t1])
+    HiveProject(a=[$0], b=[$1])
+      HiveFilter(condition=[IS NOT NULL($0)])
+        HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
 PREHOOK: query: EXPLAIN
 SELECT S.a, t1.a, t1.b FROM (
diff --git a/ql/src/test/results/clientpositive/llap/cte_mat_11.q.out b/ql/src/test/results/clientpositive/llap/cte_mat_11.q.out
index e7ca9fa180f..f4cadc024bf 100644
--- a/ql/src/test/results/clientpositive/llap/cte_mat_11.q.out
+++ b/ql/src/test/results/clientpositive/llap/cte_mat_11.q.out
@@ -289,7 +289,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@materialized_cte2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[$0])
+HiveProject(a.key=[$0])
   HiveJoin(condition=[=($0, $1)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(key=[$0])
       HiveFilter(condition=[IS NOT NULL($0)])
@@ -510,11 +510,12 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@materialized_cte2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveUnion(all=[true])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, materialized_cte2]], table:alias=[materialized_cte2])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, materialized_cte2]], table:alias=[materialized_cte2])
+HiveProject(key=[$0], value=[$1])
+  HiveUnion(all=[true])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, materialized_cte2]], table:alias=[materialized_cte2])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, materialized_cte2]], table:alias=[materialized_cte2])
 
 PREHOOK: query: CREATE TABLE src_no_stats AS SELECT * FROM src
 PREHOOK: type: CREATETABLE_AS_SELECT
@@ -817,7 +818,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@materialized_cte2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[$0])
+HiveProject(a.key=[$0])
   HiveJoin(condition=[=($0, $1)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(key=[$0])
       HiveFilter(condition=[IS NOT NULL($0)])
@@ -1038,11 +1039,12 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@materialized_cte2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveUnion(all=[true])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, materialized_cte2]], table:alias=[materialized_cte2])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, materialized_cte2]], table:alias=[materialized_cte2])
+HiveProject(key=[$0], value=[$1])
+  HiveUnion(all=[true])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, materialized_cte2]], table:alias=[materialized_cte2])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, materialized_cte2]], table:alias=[materialized_cte2])
 
 PREHOOK: query: CREATE TABLE src_partial_stats_key AS SELECT * FROM src
 PREHOOK: type: CREATETABLE_AS_SELECT
@@ -1357,7 +1359,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@materialized_cte2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[$0])
+HiveProject(a.key=[$0])
   HiveJoin(condition=[=($0, $1)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(key=[$0])
       HiveFilter(condition=[IS NOT NULL($0)])
@@ -1578,11 +1580,12 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@materialized_cte2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveUnion(all=[true])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, materialized_cte2]], table:alias=[materialized_cte2])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, materialized_cte2]], table:alias=[materialized_cte2])
+HiveProject(key=[$0], value=[$1])
+  HiveUnion(all=[true])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, materialized_cte2]], table:alias=[materialized_cte2])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, materialized_cte2]], table:alias=[materialized_cte2])
 
 PREHOOK: query: CREATE TABLE src_partial_stats_value AS SELECT * FROM src
 PREHOOK: type: CREATETABLE_AS_SELECT
@@ -1897,7 +1900,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@materialized_cte2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[$0])
+HiveProject(a.key=[$0])
   HiveJoin(condition=[=($0, $1)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(key=[$0])
       HiveFilter(condition=[IS NOT NULL($0)])
@@ -2118,9 +2121,10 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@materialized_cte2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveUnion(all=[true])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, materialized_cte2]], table:alias=[materialized_cte2])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, materialized_cte2]], table:alias=[materialized_cte2])
+HiveProject(key=[$0], value=[$1])
+  HiveUnion(all=[true])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, materialized_cte2]], table:alias=[materialized_cte2])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, materialized_cte2]], table:alias=[materialized_cte2])
 
diff --git a/ql/src/test/results/clientpositive/llap/cte_mat_12.q.out b/ql/src/test/results/clientpositive/llap/cte_mat_12.q.out
index 051c002d6b0..e72b749978e 100644
--- a/ql/src/test/results/clientpositive/llap/cte_mat_12.q.out
+++ b/ql/src/test/results/clientpositive/llap/cte_mat_12.q.out
@@ -35,16 +35,17 @@ POSTHOOK: Input: default@cte_suggestion_0
 POSTHOOK: Input: default@emps
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{0}])
-  HiveProject(_o__c0=[$0])
-    HiveUnion(all=[true])
-      HiveProject(_o__c0=[$0])
-        HiveTableSpool(table=[[cte, cte_suggestion_0]])
-          HiveProject(_o__c0=[$1])
-            HiveAggregate(group=[{1}], agg#0=[count()])
-              HiveTableScan(table=[[default, emps]], table:alias=[e])
-      HiveProject(_o__c0=[$0])
-        HiveTableScan(table=[[cte, cte_suggestion_0]], table:alias=[cte_suggestion_0])
+HiveProject(_c0=[$0])
+  HiveAggregate(group=[{0}])
+    HiveProject(_o__c0=[$0])
+      HiveUnion(all=[true])
+        HiveProject(_o__c0=[$0])
+          HiveTableSpool(table=[[cte, cte_suggestion_0]])
+            HiveProject(_o__c0=[$1])
+              HiveAggregate(group=[{1}], agg#0=[count()])
+                HiveTableScan(table=[[default, emps]], table:alias=[e])
+        HiveProject(_o__c0=[$0])
+          HiveTableScan(table=[[cte, cte_suggestion_0]], table:alias=[cte_suggestion_0])
 
 PREHOOK: query: EXPLAIN CBO
 SELECT COUNT(*), 'A' FROM emps e GROUP BY e.deptno
@@ -61,15 +62,16 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@emps
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{0, 1}])
-  HiveProject(_o__c0=[$0], _o__c1=[$1])
-    HiveUnion(all=[true])
-      HiveProject(_o__c0=[$1], _o__c1=[_UTF-16LE'A':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
-        HiveAggregate(group=[{1}], agg#0=[count()])
-          HiveTableScan(table=[[default, emps]], table:alias=[e])
-      HiveProject(_o__c0=[$1], _o__c1=[_UTF-16LE'B':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
-        HiveAggregate(group=[{1}], agg#0=[count()])
-          HiveTableScan(table=[[default, emps]], table:alias=[e])
+HiveProject(_c0=[$0], _c1=[$1])
+  HiveAggregate(group=[{0, 1}])
+    HiveProject(_o__c0=[$0], _o__c1=[$1])
+      HiveUnion(all=[true])
+        HiveProject(_o__c0=[$1], _o__c1=[_UTF-16LE'A':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
+          HiveAggregate(group=[{1}], agg#0=[count()])
+            HiveTableScan(table=[[default, emps]], table:alias=[e])
+        HiveProject(_o__c0=[$1], _o__c1=[_UTF-16LE'B':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
+          HiveAggregate(group=[{1}], agg#0=[count()])
+            HiveTableScan(table=[[default, emps]], table:alias=[e])
 
 PREHOOK: query: EXPLAIN CBO
 SELECT name FROM emps e WHERE salary > 50000
@@ -86,15 +88,16 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@emps
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{0}])
-  HiveProject(name=[$0])
-    HiveUnion(all=[true])
-      HiveProject(name=[$2])
-        HiveFilter(condition=[>($3, 50000:DECIMAL(5, 0))])
-          HiveTableScan(table=[[default, emps]], table:alias=[e])
-      HiveProject(name=[$2])
-        HiveFilter(condition=[>($3, 50000:DECIMAL(5, 0))])
-          HiveTableScan(table=[[default, emps]], table:alias=[e])
+HiveProject(name=[$0])
+  HiveAggregate(group=[{0}])
+    HiveProject(name=[$0])
+      HiveUnion(all=[true])
+        HiveProject(name=[$2])
+          HiveFilter(condition=[>($3, 50000:DECIMAL(5, 0))])
+            HiveTableScan(table=[[default, emps]], table:alias=[e])
+        HiveProject(name=[$2])
+          HiveFilter(condition=[>($3, 50000:DECIMAL(5, 0))])
+            HiveTableScan(table=[[default, emps]], table:alias=[e])
 
 PREHOOK: query: EXPLAIN CBO
 SELECT COUNT(*) FROM emps e GROUP BY e.deptno
@@ -113,16 +116,17 @@ POSTHOOK: Input: default@cte_suggestion_0
 POSTHOOK: Input: default@emps
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{0}])
-  HiveProject(_o__c0=[$0])
-    HiveUnion(all=[true])
-      HiveProject(_o__c0=[$0])
-        HiveTableSpool(table=[[cte, cte_suggestion_0]])
-          HiveProject(_o__c0=[$1])
-            HiveAggregate(group=[{1}], agg#0=[count()])
-              HiveTableScan(table=[[default, emps]], table:alias=[e])
-      HiveProject(_o__c0=[$0])
-        HiveTableScan(table=[[cte, cte_suggestion_0]], table:alias=[cte_suggestion_0])
+HiveProject(_c0=[$0])
+  HiveAggregate(group=[{0}])
+    HiveProject(_o__c0=[$0])
+      HiveUnion(all=[true])
+        HiveProject(_o__c0=[$0])
+          HiveTableSpool(table=[[cte, cte_suggestion_0]])
+            HiveProject(_o__c0=[$1])
+              HiveAggregate(group=[{1}], agg#0=[count()])
+                HiveTableScan(table=[[default, emps]], table:alias=[e])
+        HiveProject(_o__c0=[$0])
+          HiveTableScan(table=[[cte, cte_suggestion_0]], table:alias=[cte_suggestion_0])
 
 PREHOOK: query: EXPLAIN CBO
 SELECT COUNT(*), 'A' FROM emps e GROUP BY e.deptno
@@ -141,16 +145,17 @@ POSTHOOK: Input: default@cte_suggestion_0
 POSTHOOK: Input: default@emps
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{0, 1}])
-  HiveProject(_o__c0=[$0], _o__c1=[$1])
-    HiveUnion(all=[true])
-      HiveProject(_o__c0=[$1], _o__c1=[_UTF-16LE'A':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
-        HiveTableSpool(table=[[cte, cte_suggestion_0]])
-          HiveProject(deptno=[$0], $f1=[$1])
-            HiveAggregate(group=[{1}], agg#0=[count()])
-              HiveTableScan(table=[[default, emps]], table:alias=[e])
-      HiveProject(_o__c0=[$1], _o__c1=[_UTF-16LE'B':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
-        HiveTableScan(table=[[cte, cte_suggestion_0]], table:alias=[cte_suggestion_0])
+HiveProject(_c0=[$0], _c1=[$1])
+  HiveAggregate(group=[{0, 1}])
+    HiveProject(_o__c0=[$0], _o__c1=[$1])
+      HiveUnion(all=[true])
+        HiveProject(_o__c0=[$1], _o__c1=[_UTF-16LE'A':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
+          HiveTableSpool(table=[[cte, cte_suggestion_0]])
+            HiveProject(deptno=[$0], $f1=[$1])
+              HiveAggregate(group=[{1}], agg#0=[count()])
+                HiveTableScan(table=[[default, emps]], table:alias=[e])
+        HiveProject(_o__c0=[$1], _o__c1=[_UTF-16LE'B':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
+          HiveTableScan(table=[[cte, cte_suggestion_0]], table:alias=[cte_suggestion_0])
 
 PREHOOK: query: EXPLAIN CBO
 SELECT name FROM emps e WHERE salary > 50000
@@ -169,14 +174,15 @@ POSTHOOK: Input: default@cte_suggestion_0
 POSTHOOK: Input: default@emps
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{0}])
-  HiveProject(name=[$0])
-    HiveUnion(all=[true])
-      HiveProject(name=[$0])
-        HiveTableSpool(table=[[cte, cte_suggestion_0]])
-          HiveProject(name=[$2])
-            HiveFilter(condition=[>($3, 50000:DECIMAL(5, 0))])
-              HiveTableScan(table=[[default, emps]], table:alias=[e])
-      HiveProject(name=[$0])
-        HiveTableScan(table=[[cte, cte_suggestion_0]], table:alias=[cte_suggestion_0])
+HiveProject(name=[$0])
+  HiveAggregate(group=[{0}])
+    HiveProject(name=[$0])
+      HiveUnion(all=[true])
+        HiveProject(name=[$0])
+          HiveTableSpool(table=[[cte, cte_suggestion_0]])
+            HiveProject(name=[$2])
+              HiveFilter(condition=[>($3, 50000:DECIMAL(5, 0))])
+                HiveTableScan(table=[[default, emps]], table:alias=[e])
+        HiveProject(name=[$0])
+          HiveTableScan(table=[[cte, cte_suggestion_0]], table:alias=[cte_suggestion_0])
 
diff --git a/ql/src/test/results/clientpositive/llap/current_date_timestamp.q.out b/ql/src/test/results/clientpositive/llap/current_date_timestamp.q.out
index 22d0b25aa86..c830cbb218b 100644
--- a/ql/src/test/results/clientpositive/llap/current_date_timestamp.q.out
+++ b/ql/src/test/results/clientpositive/llap/current_date_timestamp.q.out
@@ -20,7 +20,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@alltypesorc
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(_o__c0=[CAST(2012-01-01 01:02:03:TIMESTAMP(9)):TIMESTAMP(9)])
+HiveProject(_c0=[CAST(2012-01-01 01:02:03:TIMESTAMP(9)):TIMESTAMP(9)])
   HiveTableScan(table=[[default, alltypesorc]], table:alias=[alltypesorc])
 
 PREHOOK: query: select count(*) from (select current_timestamp() from alltypesorc union select current_timestamp() from src limit 5 ) subq
@@ -59,7 +59,7 @@ POSTHOOK: query: explain extended select current_timestamp() from alltypesorc
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@alltypesorc
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST(TIMESTAMP '2012-01-01 01:02:03.000000000' AS TIMESTAMP) AS `_o__c0`
+OPTIMIZED SQL: SELECT CAST(TIMESTAMP '2012-01-01 01:02:03.000000000' AS TIMESTAMP) AS `_c0`
 FROM `default`.`alltypesorc`
 STAGE DEPENDENCIES:
   Stage-0 is a root stage
diff --git a/ql/src/test/results/clientpositive/llap/date_timestamp_partition_filter.q.out b/ql/src/test/results/clientpositive/llap/date_timestamp_partition_filter.q.out
index a676d982e37..6d2e289271b 100644
--- a/ql/src/test/results/clientpositive/llap/date_timestamp_partition_filter.q.out
+++ b/ql/src/test/results/clientpositive/llap/date_timestamp_partition_filter.q.out
@@ -38,7 +38,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@testpd
 POSTHOOK: Input: default@testpd@partitiondate=2023-01-01
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `col1`, `col2`, CAST(DATE '2023-01-01' AS DATE) AS `partitiondate`
+OPTIMIZED SQL: SELECT `col1` AS `testpd.col1`, `col2` AS `testpd.col2`, CAST(DATE '2023-01-01' AS DATE) AS `testpd.partitiondate`
 FROM `default`.`testpd`
 WHERE `partitiondate` = DATE '2023-01-01'
 STAGE DEPENDENCIES:
@@ -145,7 +145,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@testpt
 POSTHOOK: Input: default@testpt@partitiontimestamp=2023-01-01 10%3A20%3A30
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `col1`, `col2`, CAST(TIMESTAMP '2023-01-01 10:20:30.000000000' AS TIMESTAMP) AS `partitiontimestamp`
+OPTIMIZED SQL: SELECT `col1` AS `testpt.col1`, `col2` AS `testpt.col2`, CAST(TIMESTAMP '2023-01-01 10:20:30.000000000' AS TIMESTAMP) AS `testpt.partitiontimestamp`
 FROM `default`.`testpt`
 WHERE `partitiontimestamp` = TIMESTAMP '2023-01-01 10:20:30.000000000'
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/disable_merge_for_bucketing.q.out b/ql/src/test/results/clientpositive/llap/disable_merge_for_bucketing.q.out
index bdddf0568dc..c60c7fd7395 100644
--- a/ql/src/test/results/clientpositive/llap/disable_merge_for_bucketing.q.out
+++ b/ql/src/test/results/clientpositive/llap/disable_merge_for_bucketing.q.out
@@ -18,7 +18,7 @@ select * from src
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 POSTHOOK: Output: default@bucket2_1_n0
-OPTIMIZED SQL: SELECT `key`, `value`
+OPTIMIZED SQL: SELECT `key` AS `src.key`, `value` AS `src.value`
 FROM `default`.`src`
 STAGE DEPENDENCIES:
   Stage-1 is a root stage
diff --git a/ql/src/test/results/clientpositive/llap/dynamic_semijoin_reduction.q.out b/ql/src/test/results/clientpositive/llap/dynamic_semijoin_reduction.q.out
index f60d2aeb13e..f793407f105 100644
--- a/ql/src/test/results/clientpositive/llap/dynamic_semijoin_reduction.q.out
+++ b/ql/src/test/results/clientpositive/llap/dynamic_semijoin_reduction.q.out
@@ -1724,7 +1724,7 @@ POSTHOOK: Input: default@srcpart_small_n3
 POSTHOOK: Input: default@srcpart_small_n3@ds=2008-04-08
 POSTHOOK: Input: default@srcpart_small_n3@ds=2008-04-09
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM (SELECT `key`
 FROM `default`.`srcpart_date_n7`
 WHERE `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/dynamic_semijoin_user_level.q.out b/ql/src/test/results/clientpositive/llap/dynamic_semijoin_user_level.q.out
index 69c91531768..8d2f985e0f7 100644
--- a/ql/src/test/results/clientpositive/llap/dynamic_semijoin_user_level.q.out
+++ b/ql/src/test/results/clientpositive/llap/dynamic_semijoin_user_level.q.out
@@ -923,7 +923,7 @@ POSTHOOK: Input: default@srcpart_small_n4
 POSTHOOK: Input: default@srcpart_small_n4@ds=2008-04-08
 POSTHOOK: Input: default@srcpart_small_n4@ds=2008-04-09
 POSTHOOK: Output: hdfs://### HDFS PATH ###
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM (SELECT `key`
 FROM `default`.`srcpart_date_n9`
 WHERE `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/empty_result.q.out b/ql/src/test/results/clientpositive/llap/empty_result.q.out
index d2e90701316..3dfc4650aca 100644
--- a/ql/src/test/results/clientpositive/llap/empty_result.q.out
+++ b/ql/src/test/results/clientpositive/llap/empty_result.q.out
@@ -221,8 +221,9 @@ POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 Explain
 CBO PLAN:
-HiveAggregate(group=[{}], agg#0=[min($0)])
-  HiveValues(tuples=[[]])
+HiveProject(_c0=[$0])
+  HiveAggregate(group=[{}], agg#0=[min($0)])
+    HiveValues(tuples=[[]])
 
 PREHOOK: query: explain cbo
 select b1, count(a1) count1 from (select a1, b1 from t1) s where 1=0 group by b1
diff --git a/ql/src/test/results/clientpositive/llap/empty_result_foj_constraints.q.out b/ql/src/test/results/clientpositive/llap/empty_result_foj_constraints.q.out
index f9764249ce7..c7949d4d029 100644
--- a/ql/src/test/results/clientpositive/llap/empty_result_foj_constraints.q.out
+++ b/ql/src/test/results/clientpositive/llap/empty_result_foj_constraints.q.out
@@ -52,7 +52,7 @@ POSTHOOK: Input: default@t2
 #### A masked pattern was here ####
 Explain
 CBO PLAN:
-HiveProject(a=[null:INTEGER], b=[null:VARCHAR(10) CHARACTER SET "UTF-16LE"], c=[CAST($0):INTEGER], d=[CAST($1):VARCHAR(10) CHARACTER SET "UTF-16LE"])
+HiveProject(s.a=[null:INTEGER], s.b=[null:VARCHAR(10) CHARACTER SET "UTF-16LE"], t2.c=[CAST($0):INTEGER], t2.d=[CAST($1):VARCHAR(10) CHARACTER SET "UTF-16LE"])
   HiveTableScan(table=[[default, t2]], table:alias=[t2])
 
 PREHOOK: query: select * from (select a, b from t1 where 0=1) s
@@ -86,7 +86,7 @@ POSTHOOK: Input: default@t2
 #### A masked pattern was here ####
 Explain
 CBO PLAN:
-HiveProject(a=[CAST($0):INTEGER], b=[CAST($1):VARCHAR(10) CHARACTER SET "UTF-16LE"], c=[null:INTEGER], d=[null:VARCHAR(10) CHARACTER SET "UTF-16LE"])
+HiveProject(t1.a=[CAST($0):INTEGER], t1.b=[CAST($1):VARCHAR(10) CHARACTER SET "UTF-16LE"], s.c=[null:INTEGER], s.d=[null:VARCHAR(10) CHARACTER SET "UTF-16LE"])
   HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
 PREHOOK: query: select * from t1
diff --git a/ql/src/test/results/clientpositive/llap/empty_result_outerjoin.q.out b/ql/src/test/results/clientpositive/llap/empty_result_outerjoin.q.out
index 19ad909b104..086ee9e2958 100644
--- a/ql/src/test/results/clientpositive/llap/empty_result_outerjoin.q.out
+++ b/ql/src/test/results/clientpositive/llap/empty_result_outerjoin.q.out
@@ -83,7 +83,7 @@ POSTHOOK: Input: default@t2
 #### A masked pattern was here ####
 Explain
 CBO PLAN:
-HiveProject(a=[$0], b=[$1], c=[null:INTEGER], d=[null:VARCHAR(10) CHARACTER SET "UTF-16LE"])
+HiveProject(t1.a=[$0], t1.b=[$1], s.c=[null:INTEGER], s.d=[null:VARCHAR(10) CHARACTER SET "UTF-16LE"])
   HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
 PREHOOK: query: select * from t1
@@ -181,7 +181,7 @@ POSTHOOK: Input: default@t2
 #### A masked pattern was here ####
 Explain
 CBO PLAN:
-HiveProject(a=[null:INTEGER], b=[null:VARCHAR(10) CHARACTER SET "UTF-16LE"], c=[$0], d=[$1])
+HiveProject(s.a=[null:INTEGER], s.b=[null:VARCHAR(10) CHARACTER SET "UTF-16LE"], t2.c=[$0], t2.d=[$1])
   HiveTableScan(table=[[default, t2]], table:alias=[t2])
 
 PREHOOK: query: select * from (select a, b from t1 where 0=1) s
@@ -248,7 +248,7 @@ POSTHOOK: Input: default@t2
 #### A masked pattern was here ####
 Explain
 CBO PLAN:
-HiveProject(a=[null:INTEGER], b=[null:VARCHAR(10) CHARACTER SET "UTF-16LE"], c=[$0], d=[$1])
+HiveProject(s.a=[null:INTEGER], s.b=[null:VARCHAR(10) CHARACTER SET "UTF-16LE"], t2.c=[$0], t2.d=[$1])
   HiveTableScan(table=[[default, t2]], table:alias=[t2])
 
 PREHOOK: query: select * from (select a, b from t1 where 0=1) s
@@ -284,7 +284,7 @@ POSTHOOK: Input: default@t2
 #### A masked pattern was here ####
 Explain
 CBO PLAN:
-HiveProject(a=[$0], b=[$1], c=[null:INTEGER], d=[null:VARCHAR(10) CHARACTER SET "UTF-16LE"])
+HiveProject(t1.a=[$0], t1.b=[$1], s.c=[null:INTEGER], s.d=[null:VARCHAR(10) CHARACTER SET "UTF-16LE"])
   HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
 PREHOOK: query: select * from t1
@@ -349,7 +349,7 @@ POSTHOOK: Input: default@t2
 #### A masked pattern was here ####
 Explain
 CBO PLAN:
-HiveProject(a=[$0])
+HiveProject(t1.a=[$0])
   HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
 PREHOOK: query: select t1.a from t1 left join (select c, d from t2 where 1=0) s on s.c = t1.a where s.c is null
diff --git a/ql/src/test/results/clientpositive/llap/empty_result_union.q.out b/ql/src/test/results/clientpositive/llap/empty_result_union.q.out
index 42076650e92..400767f6615 100644
--- a/ql/src/test/results/clientpositive/llap/empty_result_union.q.out
+++ b/ql/src/test/results/clientpositive/llap/empty_result_union.q.out
@@ -54,8 +54,9 @@ POSTHOOK: Input: default@t2
 #### A masked pattern was here ####
 Explain
 CBO PLAN:
-HiveAggregate(group=[{0, 1}])
-  HiveTableScan(table=[[default, t1]], table:alias=[t1])
+HiveProject(a2=[$0], b2=[$1])
+  HiveAggregate(group=[{0, 1}])
+    HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
 PREHOOK: query: explain cbo
 select a1, b1 from t1
@@ -75,8 +76,9 @@ POSTHOOK: Input: default@t2
 #### A masked pattern was here ####
 Explain
 CBO PLAN:
-HiveAggregate(group=[{0, 1}])
-  HiveTableScan(table=[[default, t1]], table:alias=[t1])
+HiveProject(a1=[$0], b1=[$1])
+  HiveAggregate(group=[{0, 1}])
+    HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
 PREHOOK: query: explain
 select a1, b1 from t1
diff --git a/ql/src/test/results/clientpositive/llap/excluded_rule_explain.q.out b/ql/src/test/results/clientpositive/llap/excluded_rule_explain.q.out
index af89a3b547c..406075ab583 100644
--- a/ql/src/test/results/clientpositive/llap/excluded_rule_explain.q.out
+++ b/ql/src/test/results/clientpositive/llap/excluded_rule_explain.q.out
@@ -7,7 +7,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: _dummy_database@_dummy_table
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(_o__c0=[1])
+HiveProject(_c0=[1])
   HiveTableScan(table=[[_dummy_database, _dummy_table]], table:alias=[_dummy_table])
 
 PREHOOK: query: EXPLAIN FORMATTED CBO SELECT 1
@@ -18,7 +18,7 @@ POSTHOOK: query: EXPLAIN FORMATTED CBO SELECT 1
 POSTHOOK: type: QUERY
 POSTHOOK: Input: _dummy_database@_dummy_table
 #### A masked pattern was here ####
-{"CBOPlan":"{\n  \"rels\": [\n    {\n      \"id\": \"0\",\n      \"relOp\": \"org.apache.hadoop.hive.ql.optimizer.calcite.reloperators.HiveTableScan\",\n      \"table\": [\n        \"_dummy_database\",\n        \"_dummy_table\"\n      ],\n      \"table:alias\": \"_dummy_table\",\n      \"inputs\": [],\n      \"rowCount\": 1.0,\n      \"avgRowSize\": 129.0,\n      \"rowType\": {\n        \"fields\": [\n          {\n            \"type\": \"BIGINT\",\n            \"nullable\": true,\n       [...]
+{"CBOPlan":"{\n  \"rels\": [\n    {\n      \"id\": \"0\",\n      \"relOp\": \"org.apache.hadoop.hive.ql.optimizer.calcite.reloperators.HiveTableScan\",\n      \"table\": [\n        \"_dummy_database\",\n        \"_dummy_table\"\n      ],\n      \"table:alias\": \"_dummy_table\",\n      \"inputs\": [],\n      \"rowCount\": 1.0,\n      \"avgRowSize\": 129.0,\n      \"rowType\": {\n        \"fields\": [\n          {\n            \"type\": \"BIGINT\",\n            \"nullable\": true,\n       [...]
 PREHOOK: query: EXPLAIN SELECT 1
 PREHOOK: type: QUERY
 PREHOOK: Input: _dummy_database@_dummy_table
@@ -51,7 +51,7 @@ POSTHOOK: query: EXPLAIN FORMATTED SELECT 1
 POSTHOOK: type: QUERY
 POSTHOOK: Input: _dummy_database@_dummy_table
 #### A masked pattern was here ####
-{"CBOPlan":"{\n  \"rels\": [\n    {\n      \"id\": \"0\",\n      \"relOp\": \"org.apache.hadoop.hive.ql.optimizer.calcite.reloperators.HiveTableScan\",\n      \"table\": [\n        \"_dummy_database\",\n        \"_dummy_table\"\n      ],\n      \"table:alias\": \"_dummy_table\",\n      \"inputs\": [],\n      \"rowCount\": 1.0,\n      \"avgRowSize\": 0.0,\n      \"rowType\": {\n        \"fields\": [\n          {\n            \"type\": \"BIGINT\",\n            \"nullable\": true,\n         [...]
+{"CBOPlan":"{\n  \"rels\": [\n    {\n      \"id\": \"0\",\n      \"relOp\": \"org.apache.hadoop.hive.ql.optimizer.calcite.reloperators.HiveTableScan\",\n      \"table\": [\n        \"_dummy_database\",\n        \"_dummy_table\"\n      ],\n      \"table:alias\": \"_dummy_table\",\n      \"inputs\": [],\n      \"rowCount\": 1.0,\n      \"avgRowSize\": 0.0,\n      \"rowType\": {\n        \"fields\": [\n          {\n            \"type\": \"BIGINT\",\n            \"nullable\": true,\n         [...]
 PREHOOK: query: EXPLAIN CBO SELECT 1
 PREHOOK: type: QUERY
 PREHOOK: Input: _dummy_database@_dummy_table
@@ -63,7 +63,7 @@ POSTHOOK: Input: _dummy_database@_dummy_table
 Excluded rules: HiveJoinPushTransitivePredicatesRule|HivePreFilteringRule
 
 CBO PLAN:
-HiveProject(_o__c0=[1])
+HiveProject(_c0=[1])
   HiveTableScan(table=[[_dummy_database, _dummy_table]], table:alias=[_dummy_table])
 
 PREHOOK: query: EXPLAIN FORMATTED CBO SELECT 1
@@ -74,7 +74,7 @@ POSTHOOK: query: EXPLAIN FORMATTED CBO SELECT 1
 POSTHOOK: type: QUERY
 POSTHOOK: Input: _dummy_database@_dummy_table
 #### A masked pattern was here ####
-{"CBOPlan":"{\n  \"rels\": [\n    {\n      \"id\": \"0\",\n      \"relOp\": \"org.apache.hadoop.hive.ql.optimizer.calcite.reloperators.HiveTableScan\",\n      \"table\": [\n        \"_dummy_database\",\n        \"_dummy_table\"\n      ],\n      \"table:alias\": \"_dummy_table\",\n      \"inputs\": [],\n      \"rowCount\": 1.0,\n      \"avgRowSize\": 129.0,\n      \"rowType\": {\n        \"fields\": [\n          {\n            \"type\": \"BIGINT\",\n            \"nullable\": true,\n       [...]
+{"CBOPlan":"{\n  \"rels\": [\n    {\n      \"id\": \"0\",\n      \"relOp\": \"org.apache.hadoop.hive.ql.optimizer.calcite.reloperators.HiveTableScan\",\n      \"table\": [\n        \"_dummy_database\",\n        \"_dummy_table\"\n      ],\n      \"table:alias\": \"_dummy_table\",\n      \"inputs\": [],\n      \"rowCount\": 1.0,\n      \"avgRowSize\": 129.0,\n      \"rowType\": {\n        \"fields\": [\n          {\n            \"type\": \"BIGINT\",\n            \"nullable\": true,\n       [...]
 PREHOOK: query: EXPLAIN SELECT 1
 PREHOOK: type: QUERY
 PREHOOK: Input: _dummy_database@_dummy_table
@@ -109,4 +109,4 @@ POSTHOOK: query: EXPLAIN FORMATTED SELECT 1
 POSTHOOK: type: QUERY
 POSTHOOK: Input: _dummy_database@_dummy_table
 #### A masked pattern was here ####
-{"CBOPlan":"{\n  \"rels\": [\n    {\n      \"id\": \"0\",\n      \"relOp\": \"org.apache.hadoop.hive.ql.optimizer.calcite.reloperators.HiveTableScan\",\n      \"table\": [\n        \"_dummy_database\",\n        \"_dummy_table\"\n      ],\n      \"table:alias\": \"_dummy_table\",\n      \"inputs\": [],\n      \"rowCount\": 1.0,\n      \"avgRowSize\": 0.0,\n      \"rowType\": {\n        \"fields\": [\n          {\n            \"type\": \"BIGINT\",\n            \"nullable\": true,\n         [...]
+{"CBOPlan":"{\n  \"rels\": [\n    {\n      \"id\": \"0\",\n      \"relOp\": \"org.apache.hadoop.hive.ql.optimizer.calcite.reloperators.HiveTableScan\",\n      \"table\": [\n        \"_dummy_database\",\n        \"_dummy_table\"\n      ],\n      \"table:alias\": \"_dummy_table\",\n      \"inputs\": [],\n      \"rowCount\": 1.0,\n      \"avgRowSize\": 0.0,\n      \"rowType\": {\n        \"fields\": [\n          {\n            \"type\": \"BIGINT\",\n            \"nullable\": true,\n         [...]
diff --git a/ql/src/test/results/clientpositive/llap/explain_ddl_nested_part.q.out b/ql/src/test/results/clientpositive/llap/explain_ddl_nested_part.q.out
index b96b865ede4..f544ee48828 100644
--- a/ql/src/test/results/clientpositive/llap/explain_ddl_nested_part.q.out
+++ b/ql/src/test/results/clientpositive/llap/explain_ddl_nested_part.q.out
@@ -116,7 +116,7 @@ EXPLAIN CBO select * from test;
 
 
 EXPLAIN VECTORIZED select * from test;
-CBO PLAN:HiveProject(foo=[$0], i=[$1], j=[$2])
+CBO PLAN:HiveProject(test.foo=[$0], test.i=[$1], test.j=[$2])
   HiveTableScan(table=[[default, test]], table:alias=[test])
 
 PLAN VECTORIZATION:
@@ -540,7 +540,7 @@ EXPLAIN CBO select * from test2;
 
 
 EXPLAIN VECTORIZED select * from test2;
-CBO PLAN:HiveProject(foo=[$0], i=[$1], j=[$2], s=[$3], t=[$4])
+CBO PLAN:HiveProject(test2.foo=[$0], test2.i=[$1], test2.j=[$2], test2.s=[$3], test2.t=[$4])
   HiveTableScan(table=[[default, test2]], table:alias=[test2])
 
 PLAN VECTORIZATION:
diff --git a/ql/src/test/results/clientpositive/llap/explain_jdbc.q.out b/ql/src/test/results/clientpositive/llap/explain_jdbc.q.out
index cf0525e3633..36289efb477 100644
--- a/ql/src/test/results/clientpositive/llap/explain_jdbc.q.out
+++ b/ql/src/test/results/clientpositive/llap/explain_jdbc.q.out
@@ -276,7 +276,7 @@ limit 1
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@ctas_dbs
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT 1 AS `_o__c0`
+OPTIMIZED SQL: SELECT 1 AS `_c0`
 FROM `default`.`ctas_dbs`
 LIMIT 1
 STAGE DEPENDENCIES:
@@ -418,7 +418,7 @@ limit 1
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@ctlt_dbs
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT 1 AS `_o__c0`
+OPTIMIZED SQL: SELECT 1 AS `_c0`
 FROM `default`.`ctlt_dbs`
 LIMIT 1
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/explain_systest_password.q.out b/ql/src/test/results/clientpositive/llap/explain_systest_password.q.out
index 2ab7b771567..d77beafe39f 100644
--- a/ql/src/test/results/clientpositive/llap/explain_systest_password.q.out
+++ b/ql/src/test/results/clientpositive/llap/explain_systest_password.q.out
@@ -33,7 +33,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: sys@dbs
 POSTHOOK: Input: sys@tbls
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT 1 AS `_o__c0`
+OPTIMIZED SQL: SELECT 1 AS `_c0`
 FROM (SELECT `db_id`
 FROM `sys`.`tbls`
 WHERE `db_id` IS NOT NULL) AS `t0`
@@ -481,7 +481,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@ctas_dbs
 POSTHOOK: Input: sys@tbls
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT 1 AS `_o__c0`
+OPTIMIZED SQL: SELECT 1 AS `_c0`
 FROM (SELECT `db_id`
 FROM `sys`.`tbls`
 WHERE `db_id` IS NOT NULL) AS `t0`
@@ -807,7 +807,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@ctlt_dbs
 POSTHOOK: Input: sys@tbls
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT 1 AS `_o__c0`
+OPTIMIZED SQL: SELECT 1 AS `_c0`
 FROM (SELECT `db_id`
 FROM `sys`.`tbls`
 WHERE `db_id` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/explainuser_1.q.out b/ql/src/test/results/clientpositive/llap/explainuser_1.q.out
index d4c68c4f308..7151b95c136 100644
--- a/ql/src/test/results/clientpositive/llap/explainuser_1.q.out
+++ b/ql/src/test/results/clientpositive/llap/explainuser_1.q.out
@@ -3938,11 +3938,12 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@myinput1_n7
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJoin(condition=[IS NOT DISTINCT FROM($0, $3)], joinType=[inner], algorithm=[none], cost=[not available])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, myinput1_n7]], table:alias=[a])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, myinput1_n7]], table:alias=[b])
+HiveProject(a.key=[$0], a.value=[$1], b.key=[$2], b.value=[$3])
+  HiveJoin(condition=[IS NOT DISTINCT FROM($0, $3)], joinType=[inner], algorithm=[none], cost=[not available])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, myinput1_n7]], table:alias=[a])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, myinput1_n7]], table:alias=[b])
 
 PREHOOK: query: explain select * from myinput1_n7 a join myinput1_n7 b on a.key<=>b.value
 PREHOOK: type: QUERY
@@ -3989,7 +3990,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@myinput1_n7
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[$0], value=[$1], key0=[$4], value0=[$5], key1=[$2], value1=[$3])
+HiveProject(a.key=[$0], a.value=[$1], b.key=[$4], b.value=[$5], c.key=[$2], c.value=[$3])
   HiveJoin(condition=[IS NOT DISTINCT FROM($0, $5)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject(key=[$0], value=[$1])
@@ -4064,7 +4065,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@myinput1_n7
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[$0], value=[$1], key0=[$4], value0=[$5], key1=[$2], value1=[$3])
+HiveProject(a.key=[$0], a.value=[$1], b.key=[$4], b.value=[$5], c.key=[$2], c.value=[$3])
   HiveJoin(condition=[IS NOT DISTINCT FROM($0, $5)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveJoin(condition=[IS NOT DISTINCT FROM($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject(key=[$0], value=[$1])
@@ -4131,17 +4132,18 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@myinput1_n7
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJoin(condition=[AND(IS NOT DISTINCT FROM($0, $4), =($1, $5))], joinType=[inner], algorithm=[none], cost=[not available])
-  HiveJoin(condition=[AND(IS NOT DISTINCT FROM($0, $3), =($1, $2))], joinType=[inner], algorithm=[none], cost=[not available])
+HiveProject(a.key=[$0], a.value=[$1], b.key=[$2], b.value=[$3], c.key=[$4], c.value=[$5])
+  HiveJoin(condition=[AND(=($1, $5), IS NOT DISTINCT FROM($0, $4))], joinType=[inner], algorithm=[none], cost=[not available])
+    HiveJoin(condition=[AND(=($1, $2), IS NOT DISTINCT FROM($0, $3))], joinType=[inner], algorithm=[none], cost=[not available])
+      HiveProject(key=[$0], value=[$1])
+        HiveFilter(condition=[IS NOT NULL($1)])
+          HiveTableScan(table=[[default, myinput1_n7]], table:alias=[a])
+      HiveProject(key=[$0], value=[$1])
+        HiveFilter(condition=[IS NOT NULL($0)])
+          HiveTableScan(table=[[default, myinput1_n7]], table:alias=[b])
     HiveProject(key=[$0], value=[$1])
       HiveFilter(condition=[IS NOT NULL($1)])
-        HiveTableScan(table=[[default, myinput1_n7]], table:alias=[a])
-    HiveProject(key=[$0], value=[$1])
-      HiveFilter(condition=[IS NOT NULL($0)])
-        HiveTableScan(table=[[default, myinput1_n7]], table:alias=[b])
-  HiveProject(key=[$0], value=[$1])
-    HiveFilter(condition=[IS NOT NULL($1)])
-      HiveTableScan(table=[[default, myinput1_n7]], table:alias=[c])
+        HiveTableScan(table=[[default, myinput1_n7]], table:alias=[c])
 
 PREHOOK: query: explain select * from myinput1_n7 a join myinput1_n7 b on a.key<=>b.value AND a.value=b.key join myinput1_n7 c on a.key<=>c.key AND a.value=c.value
 PREHOOK: type: QUERY
@@ -4202,7 +4204,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@myinput1_n7
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[$0], value=[$1], key0=[$4], value0=[$5], key1=[$2], value1=[$3])
+HiveProject(a.key=[$0], a.value=[$1], b.key=[$4], b.value=[$5], c.key=[$2], c.value=[$3])
   HiveJoin(condition=[AND(IS NOT DISTINCT FROM($0, $5), IS NOT DISTINCT FROM($1, $4))], joinType=[inner], algorithm=[none], cost=[not available])
     HiveJoin(condition=[AND(IS NOT DISTINCT FROM($0, $2), IS NOT DISTINCT FROM($1, $3))], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject(key=[$0], value=[$1])
@@ -4269,11 +4271,12 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@myinput1_n7
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJoin(condition=[IS NOT DISTINCT FROM($0, $3)], joinType=[left], algorithm=[none], cost=[not available])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, myinput1_n7]], table:alias=[a])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, myinput1_n7]], table:alias=[b])
+HiveProject(a.key=[$0], a.value=[$1], b.key=[$2], b.value=[$3])
+  HiveJoin(condition=[IS NOT DISTINCT FROM($0, $3)], joinType=[left], algorithm=[none], cost=[not available])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, myinput1_n7]], table:alias=[a])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, myinput1_n7]], table:alias=[b])
 
 PREHOOK: query: explain select * FROM myinput1_n7 a LEFT OUTER JOIN myinput1_n7 b ON a.key<=>b.value
 PREHOOK: type: QUERY
@@ -4320,11 +4323,12 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@myinput1_n7
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJoin(condition=[IS NOT DISTINCT FROM($0, $3)], joinType=[right], algorithm=[none], cost=[not available])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, myinput1_n7]], table:alias=[a])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, myinput1_n7]], table:alias=[b])
+HiveProject(a.key=[$0], a.value=[$1], b.key=[$2], b.value=[$3])
+  HiveJoin(condition=[IS NOT DISTINCT FROM($0, $3)], joinType=[right], algorithm=[none], cost=[not available])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, myinput1_n7]], table:alias=[a])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, myinput1_n7]], table:alias=[b])
 
 PREHOOK: query: explain select * FROM myinput1_n7 a RIGHT OUTER JOIN myinput1_n7 b ON a.key<=>b.value
 PREHOOK: type: QUERY
@@ -4371,11 +4375,12 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@myinput1_n7
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJoin(condition=[IS NOT DISTINCT FROM($0, $3)], joinType=[full], algorithm=[none], cost=[not available])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, myinput1_n7]], table:alias=[a])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, myinput1_n7]], table:alias=[b])
+HiveProject(a.key=[$0], a.value=[$1], b.key=[$2], b.value=[$3])
+  HiveJoin(condition=[IS NOT DISTINCT FROM($0, $3)], joinType=[full], algorithm=[none], cost=[not available])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, myinput1_n7]], table:alias=[a])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, myinput1_n7]], table:alias=[b])
 
 PREHOOK: query: explain select * FROM myinput1_n7 a FULL OUTER JOIN myinput1_n7 b ON a.key<=>b.value
 PREHOOK: type: QUERY
@@ -4422,11 +4427,12 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@myinput1_n7
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJoin(condition=[IS NOT DISTINCT FROM($0, $3)], joinType=[inner], algorithm=[none], cost=[not available])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, myinput1_n7]], table:alias=[a])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, myinput1_n7]], table:alias=[b])
+HiveProject(a.key=[$0], a.value=[$1], b.key=[$2], b.value=[$3])
+  HiveJoin(condition=[IS NOT DISTINCT FROM($0, $3)], joinType=[inner], algorithm=[none], cost=[not available])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, myinput1_n7]], table:alias=[a])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, myinput1_n7]], table:alias=[b])
 
 PREHOOK: query: explain select /*+ MAPJOIN(b) */ * FROM myinput1_n7 a JOIN myinput1_n7 b ON a.key<=>b.value
 PREHOOK: type: QUERY
@@ -4539,11 +4545,12 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@smb_input1_n2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJoin(condition=[IS NOT DISTINCT FROM($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, smb_input1_n2]], table:alias=[a])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, smb_input1_n2]], table:alias=[b])
+HiveProject(a.key=[$0], a.value=[$1], b.key=[$2], b.value=[$3])
+  HiveJoin(condition=[IS NOT DISTINCT FROM($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, smb_input1_n2]], table:alias=[a])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, smb_input1_n2]], table:alias=[b])
 
 PREHOOK: query: explain select /*+ MAPJOIN(a) */ * FROM smb_input1_n2 a JOIN smb_input1_n2 b ON a.key <=> b.key
 PREHOOK: type: QUERY
@@ -4582,11 +4589,12 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@smb_input1_n2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJoin(condition=[AND(IS NOT DISTINCT FROM($0, $2), IS NOT DISTINCT FROM($1, $3))], joinType=[inner], algorithm=[none], cost=[not available])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, smb_input1_n2]], table:alias=[a])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, smb_input1_n2]], table:alias=[b])
+HiveProject(a.key=[$0], a.value=[$1], b.key=[$2], b.value=[$3])
+  HiveJoin(condition=[AND(IS NOT DISTINCT FROM($0, $2), IS NOT DISTINCT FROM($1, $3))], joinType=[inner], algorithm=[none], cost=[not available])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, smb_input1_n2]], table:alias=[a])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, smb_input1_n2]], table:alias=[b])
 
 PREHOOK: query: explain select /*+ MAPJOIN(a) */ * FROM smb_input1_n2 a JOIN smb_input1_n2 b ON a.key <=> b.key AND a.value <=> b.value
 PREHOOK: type: QUERY
@@ -4633,11 +4641,12 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@smb_input1_n2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJoin(condition=[IS NOT DISTINCT FROM($0, $2)], joinType=[right], algorithm=[none], cost=[not available])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, smb_input1_n2]], table:alias=[a])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, smb_input1_n2]], table:alias=[b])
+HiveProject(a.key=[$0], a.value=[$1], b.key=[$2], b.value=[$3])
+  HiveJoin(condition=[IS NOT DISTINCT FROM($0, $2)], joinType=[right], algorithm=[none], cost=[not available])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, smb_input1_n2]], table:alias=[a])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, smb_input1_n2]], table:alias=[b])
 
 PREHOOK: query: explain select /*+ MAPJOIN(a) */ * FROM smb_input1_n2 a RIGHT OUTER JOIN smb_input1_n2 b ON a.key <=> b.key
 PREHOOK: type: QUERY
@@ -4676,11 +4685,12 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@smb_input1_n2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJoin(condition=[IS NOT DISTINCT FROM($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, smb_input1_n2]], table:alias=[a])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, smb_input1_n2]], table:alias=[b])
+HiveProject(a.key=[$0], a.value=[$1], b.key=[$2], b.value=[$3])
+  HiveJoin(condition=[IS NOT DISTINCT FROM($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, smb_input1_n2]], table:alias=[a])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, smb_input1_n2]], table:alias=[b])
 
 PREHOOK: query: explain select /*+ MAPJOIN(b) */ * FROM smb_input1_n2 a JOIN smb_input1_n2 b ON a.key <=> b.key
 PREHOOK: type: QUERY
@@ -4719,11 +4729,12 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@smb_input1_n2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJoin(condition=[IS NOT DISTINCT FROM($0, $2)], joinType=[left], algorithm=[none], cost=[not available])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, smb_input1_n2]], table:alias=[a])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, smb_input1_n2]], table:alias=[b])
+HiveProject(a.key=[$0], a.value=[$1], b.key=[$2], b.value=[$3])
+  HiveJoin(condition=[IS NOT DISTINCT FROM($0, $2)], joinType=[left], algorithm=[none], cost=[not available])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, smb_input1_n2]], table:alias=[a])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, smb_input1_n2]], table:alias=[b])
 
 PREHOOK: query: explain select /*+ MAPJOIN(b) */ * FROM smb_input1_n2 a LEFT OUTER JOIN smb_input1_n2 b ON a.key <=> b.key
 PREHOOK: type: QUERY
diff --git a/ql/src/test/results/clientpositive/llap/external_jdbc_join_mv.q.out b/ql/src/test/results/clientpositive/llap/external_jdbc_join_mv.q.out
index 4309726f2b5..871af16b4fe 100644
--- a/ql/src/test/results/clientpositive/llap/external_jdbc_join_mv.q.out
+++ b/ql/src/test/results/clientpositive/llap/external_jdbc_join_mv.q.out
@@ -157,7 +157,7 @@ POSTHOOK: Input: default@mv1
 POSTHOOK: Input: default@person
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(id=[$0], name=[$1], jid=[$2], cid=[$3], id1=[$4], title=[CAST(_UTF-16LE'Software Engineer':VARCHAR(20) CHARACTER SET "UTF-16LE"):VARCHAR(20) CHARACTER SET "UTF-16LE"], id2=[$5], name1=[$6])
+HiveProject(person.id=[$0], person.name=[$1], person.jid=[$2], person.cid=[$3], job.id=[$4], job.title=[CAST(_UTF-16LE'Software Engineer':VARCHAR(20) CHARACTER SET "UTF-16LE"):VARCHAR(20) CHARACTER SET "UTF-16LE"], country.id=[$5], country.name=[$6])
   HiveJoin(condition=[=($3, $5)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveJoin(condition=[=($2, $4)], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject(id=[$0], name=[$1], jid=[$2], cid=[$3])
diff --git a/ql/src/test/results/clientpositive/llap/external_jdbc_rowcount.q.out b/ql/src/test/results/clientpositive/llap/external_jdbc_rowcount.q.out
index 39a8cfc42ba..87c031bc00e 100644
--- a/ql/src/test/results/clientpositive/llap/external_jdbc_rowcount.q.out
+++ b/ql/src/test/results/clientpositive/llap/external_jdbc_rowcount.q.out
@@ -265,31 +265,33 @@ POSTHOOK: Input: default@ext_simple_derby_table13
 POSTHOOK: Input: default@ext_simple_derby_table14
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJdbcConverter(convention=[JDBC.DERBY])
-  JdbcProject(fkey=[$0], ikey=[$2], _o__c2=[$3])
-    JdbcAggregate(group=[{0, 2, 4}], agg#0=[sum($1)])
-      JdbcFilter(condition=[IS NULL($3)])
-        JdbcJoin(condition=[AND(=($1, $4), =($0, $3))], joinType=[left])
-          JdbcProject(fkey=[$1], ikey=[$0])
-            JdbcAggregate(group=[{0, 1}])
-              JdbcFilter(condition=[IS NULL($4)])
-                JdbcJoin(condition=[=($0, $3)], joinType=[left])
-                  JdbcProject(ikey=[$0], fkey=[$2], dkey=[$3])
-                    JdbcHiveTableScan(table=[[default, ext_simple_derby_table11]], table:alias=[ext_simple_derby_table11])
-                  JdbcProject(ikey2=[$0], fkey2=[$1], dkey2=[$2])
-                    JdbcFilter(condition=[IS NOT NULL($0)])
-                      JdbcProject(ikey2=[$0], fkey2=[$2], dkey2=[$3])
-                        JdbcHiveTableScan(table=[[default, ext_simple_derby_table13]], table:alias=[ext_simple_derby_table13])
-          JdbcProject(datekey=[$2], fkey=[$1], ikey=[$0])
-            JdbcAggregate(group=[{0, 1, 3}])
-              JdbcFilter(condition=[IS NULL($5)])
-                JdbcJoin(condition=[=($0, $4)], joinType=[left])
-                  JdbcProject(ikey=[$0], fkey=[$1], dkey=[$2], datekey=[$3])
-                    JdbcFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
-                      JdbcProject(ikey=[$0], fkey=[$2], dkey=[$3], datekey=[$4])
-                        JdbcHiveTableScan(table=[[default, ext_simple_derby_table12]], table:alias=[ext_simple_derby_table12])
-                  JdbcProject(ikey2=[$0], fkey2=[$1], dkey2=[$2])
-                    JdbcFilter(condition=[IS NOT NULL($0)])
-                      JdbcProject(ikey2=[$0], fkey2=[$2], dkey2=[$3])
-                        JdbcHiveTableScan(table=[[default, ext_simple_derby_table14]], table:alias=[ext_simple_derby_table14])
+HiveProject(t1.fkey=[$0], t2.ikey=[$1], _c2=[$2])
+  HiveProject(fkey=[$0], ikey=[$1], _o__c2=[$2])
+    HiveJdbcConverter(convention=[JDBC.DERBY])
+      JdbcProject(fkey=[$0], ikey=[$2], _o__c2=[$3])
+        JdbcAggregate(group=[{0, 2, 4}], agg#0=[sum($1)])
+          JdbcFilter(condition=[IS NULL($3)])
+            JdbcJoin(condition=[AND(=($1, $4), =($0, $3))], joinType=[left])
+              JdbcProject(fkey=[$1], ikey=[$0])
+                JdbcAggregate(group=[{0, 1}])
+                  JdbcFilter(condition=[IS NULL($4)])
+                    JdbcJoin(condition=[=($0, $3)], joinType=[left])
+                      JdbcProject(ikey=[$0], fkey=[$2], dkey=[$3])
+                        JdbcHiveTableScan(table=[[default, ext_simple_derby_table11]], table:alias=[ext_simple_derby_table11])
+                      JdbcProject(ikey2=[$0], fkey2=[$1], dkey2=[$2])
+                        JdbcFilter(condition=[IS NOT NULL($0)])
+                          JdbcProject(ikey2=[$0], fkey2=[$2], dkey2=[$3])
+                            JdbcHiveTableScan(table=[[default, ext_simple_derby_table13]], table:alias=[ext_simple_derby_table13])
+              JdbcProject(datekey=[$2], fkey=[$1], ikey=[$0])
+                JdbcAggregate(group=[{0, 1, 3}])
+                  JdbcFilter(condition=[IS NULL($5)])
+                    JdbcJoin(condition=[=($0, $4)], joinType=[left])
+                      JdbcProject(ikey=[$0], fkey=[$1], dkey=[$2], datekey=[$3])
+                        JdbcFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
+                          JdbcProject(ikey=[$0], fkey=[$2], dkey=[$3], datekey=[$4])
+                            JdbcHiveTableScan(table=[[default, ext_simple_derby_table12]], table:alias=[ext_simple_derby_table12])
+                      JdbcProject(ikey2=[$0], fkey2=[$1], dkey2=[$2])
+                        JdbcFilter(condition=[IS NOT NULL($0)])
+                          JdbcProject(ikey2=[$0], fkey2=[$2], dkey2=[$3])
+                            JdbcHiveTableScan(table=[[default, ext_simple_derby_table14]], table:alias=[ext_simple_derby_table14])
 
diff --git a/ql/src/test/results/clientpositive/llap/external_jdbc_table.q.out b/ql/src/test/results/clientpositive/llap/external_jdbc_table.q.out
index 704163b64c2..1f928ce625b 100644
--- a/ql/src/test/results/clientpositive/llap/external_jdbc_table.q.out
+++ b/ql/src/test/results/clientpositive/llap/external_jdbc_table.q.out
@@ -573,15 +573,17 @@ POSTHOOK: Input: default@ext_simple_derby_table1
 POSTHOOK: Input: default@ext_simple_derby_table2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJdbcConverter(convention=[JDBC.DERBY])
-  JdbcProject(fkey=[$1], dkey=[$3])
-    JdbcJoin(condition=[=($0, $2)], joinType=[inner])
-      JdbcProject(ikey=[$0], fkey=[$1])
-        JdbcFilter(condition=[IS NOT NULL($0)])
-          JdbcProject(ikey=[$0], fkey=[$2])
-            JdbcHiveTableScan(table=[[default, ext_simple_derby_table1]], table:alias=[ext_simple_derby_table1])
-      JdbcProject(ikey=[$0], dkey=[$1])
-        JdbcFilter(condition=[IS NOT NULL($0)])
-          JdbcProject(ikey=[$0], dkey=[$3])
-            JdbcHiveTableScan(table=[[default, ext_simple_derby_table2]], table:alias=[ext_simple_derby_table2])
+HiveProject(ext_simple_derby_table1.fkey=[$0], ext_simple_derby_table2.dkey=[$1])
+  HiveProject(fkey=[$0], dkey=[$1])
+    HiveJdbcConverter(convention=[JDBC.DERBY])
+      JdbcProject(fkey=[$1], dkey=[$3])
+        JdbcJoin(condition=[=($0, $2)], joinType=[inner])
+          JdbcProject(ikey=[$0], fkey=[$1])
+            JdbcFilter(condition=[IS NOT NULL($0)])
+              JdbcProject(ikey=[$0], fkey=[$2])
+                JdbcHiveTableScan(table=[[default, ext_simple_derby_table1]], table:alias=[ext_simple_derby_table1])
+          JdbcProject(ikey=[$0], dkey=[$1])
+            JdbcFilter(condition=[IS NOT NULL($0)])
+              JdbcProject(ikey=[$0], dkey=[$3])
+                JdbcHiveTableScan(table=[[default, ext_simple_derby_table2]], table:alias=[ext_simple_derby_table2])
 
diff --git a/ql/src/test/results/clientpositive/llap/filter_join_breaktask.q.out b/ql/src/test/results/clientpositive/llap/filter_join_breaktask.q.out
index be6918f632a..ffd2028cfbf 100644
--- a/ql/src/test/results/clientpositive/llap/filter_join_breaktask.q.out
+++ b/ql/src/test/results/clientpositive/llap/filter_join_breaktask.q.out
@@ -34,7 +34,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@filter_join_breaktask
 POSTHOOK: Input: default@filter_join_breaktask@ds=2008-04-08
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t2`.`key`, `t0`.`value`
+OPTIMIZED SQL: SELECT `t2`.`key` AS `f.key`, `t0`.`value` AS `g.value`
 FROM (SELECT `value`
 FROM `default`.`filter_join_breaktask`
 WHERE `value` <> '' AND `ds` = '2008-04-08') AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/filter_literals.q.out b/ql/src/test/results/clientpositive/llap/filter_literals.q.out
index bde7280d64c..da900bcc255 100644
--- a/ql/src/test/results/clientpositive/llap/filter_literals.q.out
+++ b/ql/src/test/results/clientpositive/llap/filter_literals.q.out
@@ -9,7 +9,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@alltypesorc
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(ctinyint=[$0], csmallint=[$1], cint=[$2], cbigint=[$3], cfloat=[$4], cdouble=[$5], cstring1=[$6], cstring2=[$7], ctimestamp1=[$8], ctimestamp2=[$9], cboolean1=[$10], cboolean2=[$11])
+HiveProject(alltypesorc.ctinyint=[$0], alltypesorc.csmallint=[$1], alltypesorc.cint=[$2], alltypesorc.cbigint=[$3], alltypesorc.cfloat=[$4], alltypesorc.cdouble=[$5], alltypesorc.cstring1=[$6], alltypesorc.cstring2=[$7], alltypesorc.ctimestamp1=[$8], alltypesorc.ctimestamp2=[$9], alltypesorc.cboolean1=[$10], alltypesorc.cboolean2=[$11])
   HiveTableScan(table=[[default, alltypesorc]], table:alias=[alltypesorc])
 
 PREHOOK: query: explain cbo
@@ -23,7 +23,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@alltypesorc
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(ctinyint=[$0], csmallint=[$1], cint=[$2], cbigint=[$3], cfloat=[$4], cdouble=[$5], cstring1=[$6], cstring2=[$7], ctimestamp1=[$8], ctimestamp2=[$9], cboolean1=[$10], cboolean2=[$11])
+HiveProject(alltypesorc.ctinyint=[$0], alltypesorc.csmallint=[$1], alltypesorc.cint=[$2], alltypesorc.cbigint=[$3], alltypesorc.cfloat=[$4], alltypesorc.cdouble=[$5], alltypesorc.cstring1=[$6], alltypesorc.cstring2=[$7], alltypesorc.ctimestamp1=[$8], alltypesorc.ctimestamp2=[$9], alltypesorc.cboolean1=[$10], alltypesorc.cboolean2=[$11])
   HiveTableScan(table=[[default, alltypesorc]], table:alias=[alltypesorc])
 
 PREHOOK: query: explain cbo
@@ -37,7 +37,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@alltypesorc
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(ctinyint=[$0], csmallint=[$1], cint=[$2], cbigint=[$3], cfloat=[$4], cdouble=[$5], cstring1=[$6], cstring2=[$7], ctimestamp1=[$8], ctimestamp2=[$9], cboolean1=[$10], cboolean2=[$11])
+HiveProject(alltypesorc.ctinyint=[$0], alltypesorc.csmallint=[$1], alltypesorc.cint=[$2], alltypesorc.cbigint=[$3], alltypesorc.cfloat=[$4], alltypesorc.cdouble=[$5], alltypesorc.cstring1=[$6], alltypesorc.cstring2=[$7], alltypesorc.ctimestamp1=[$8], alltypesorc.ctimestamp2=[$9], alltypesorc.cboolean1=[$10], alltypesorc.cboolean2=[$11])
   HiveTableScan(table=[[default, alltypesorc]], table:alias=[alltypesorc])
 
 PREHOOK: query: explain cbo
@@ -51,7 +51,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@alltypesorc
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(ctinyint=[$0], csmallint=[$1], cint=[$2], cbigint=[$3], cfloat=[$4], cdouble=[$5], cstring1=[$6], cstring2=[$7], ctimestamp1=[$8], ctimestamp2=[$9], cboolean1=[$10], cboolean2=[$11])
+HiveProject(alltypesorc.ctinyint=[$0], alltypesorc.csmallint=[$1], alltypesorc.cint=[$2], alltypesorc.cbigint=[$3], alltypesorc.cfloat=[$4], alltypesorc.cdouble=[$5], alltypesorc.cstring1=[$6], alltypesorc.cstring2=[$7], alltypesorc.ctimestamp1=[$8], alltypesorc.ctimestamp2=[$9], alltypesorc.cboolean1=[$10], alltypesorc.cboolean2=[$11])
   HiveFilter(condition=[IN($2, 2, 3)])
     HiveTableScan(table=[[default, alltypesorc]], table:alias=[alltypesorc])
 
@@ -79,7 +79,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@alltypesorc
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(ctinyint=[$0], csmallint=[$1], cint=[$2], cbigint=[$3], cfloat=[$4], cdouble=[$5], cstring1=[$6], cstring2=[$7], ctimestamp1=[$8], ctimestamp2=[$9], cboolean1=[$10], cboolean2=[$11])
+HiveProject(alltypesorc.ctinyint=[$0], alltypesorc.csmallint=[$1], alltypesorc.cint=[$2], alltypesorc.cbigint=[$3], alltypesorc.cfloat=[$4], alltypesorc.cdouble=[$5], alltypesorc.cstring1=[$6], alltypesorc.cstring2=[$7], alltypesorc.ctimestamp1=[$8], alltypesorc.ctimestamp2=[$9], alltypesorc.cboolean1=[$10], alltypesorc.cboolean2=[$11])
   HiveTableScan(table=[[default, alltypesorc]], table:alias=[alltypesorc])
 
 PREHOOK: query: explain cbo
@@ -93,7 +93,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@alltypesorc
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(ctinyint=[$0], csmallint=[$1], cint=[$2], cbigint=[$3], cfloat=[$4], cdouble=[$5], cstring1=[$6], cstring2=[$7], ctimestamp1=[$8], ctimestamp2=[$9], cboolean1=[$10], cboolean2=[$11])
+HiveProject(alltypesorc.ctinyint=[$0], alltypesorc.csmallint=[$1], alltypesorc.cint=[$2], alltypesorc.cbigint=[$3], alltypesorc.cfloat=[$4], alltypesorc.cdouble=[$5], alltypesorc.cstring1=[$6], alltypesorc.cstring2=[$7], alltypesorc.ctimestamp1=[$8], alltypesorc.ctimestamp2=[$9], alltypesorc.cboolean1=[$10], alltypesorc.cboolean2=[$11])
   HiveTableScan(table=[[default, alltypesorc]], table:alias=[alltypesorc])
 
 PREHOOK: query: explain cbo
diff --git a/ql/src/test/results/clientpositive/llap/filter_union.q.out b/ql/src/test/results/clientpositive/llap/filter_union.q.out
index e16e4cd1f88..04b4c9084b1 100644
--- a/ql/src/test/results/clientpositive/llap/filter_union.q.out
+++ b/ql/src/test/results/clientpositive/llap/filter_union.q.out
@@ -28,13 +28,14 @@ where m >2
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, COUNT(`key`) AS `c`, 3 AS `m`
+OPTIMIZED SQL: SELECT *
+FROM (SELECT `key`, COUNT(`key`) AS `c`, 3 AS `m`
 FROM `default`.`src`
 GROUP BY `key`
 UNION ALL
 SELECT `key`, COUNT(`key`) AS `c`, 4 AS `m`
 FROM `default`.`src`
-GROUP BY `key`
+GROUP BY `key`) AS `t3`
 STAGE DEPENDENCIES:
   Stage-1 is a root stage
   Stage-0 depends on stages: Stage-1
diff --git a/ql/src/test/results/clientpositive/llap/fouter_join_ppr.q.out b/ql/src/test/results/clientpositive/llap/fouter_join_ppr.q.out
index 23c86149d91..8984774e933 100644
--- a/ql/src/test/results/clientpositive/llap/fouter_join_ppr.q.out
+++ b/ql/src/test/results/clientpositive/llap/fouter_join_ppr.q.out
@@ -26,7 +26,7 @@ POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT *
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`key` AS `b.key`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`src`
 WHERE `key` > 15 AND `key` < 20 AND `key` IS NOT NULL) AS `t0`
@@ -328,7 +328,7 @@ POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT *
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`key` AS `b.key`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`srcpart`
 WHERE `key` > 15 AND `key` < 20 AND `ds` = '2008-04-08' AND `key` IS NOT NULL) AS `t0`
@@ -630,7 +630,7 @@ POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT *
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`key` AS `b.key`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`src`
 WHERE `key` > 15 AND `key` < 20 AND `key` IS NOT NULL) AS `t0`
@@ -932,7 +932,7 @@ POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT *
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`key` AS `b.key`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`srcpart`
 WHERE `key` > 15 AND `key` < 20 AND `ds` = '2008-04-08' AND `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/groupby13.q.out b/ql/src/test/results/clientpositive/llap/groupby13.q.out
index 2e12008dd75..d7c3ff6ebb3 100644
--- a/ql/src/test/results/clientpositive/llap/groupby13.q.out
+++ b/ql/src/test/results/clientpositive/llap/groupby13.q.out
@@ -127,7 +127,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@agby
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(_o__c0=[$1])
+HiveProject(_c0=[$1])
   HiveAggregate(group=[{0}], agg#0=[min($0)])
     HiveProject($f0=[CAST(_UTF-16LE'a':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"):VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
       HiveFilter(condition=[=($1, _UTF-16LE'a')])
diff --git a/ql/src/test/results/clientpositive/llap/groupby_map_ppr.q.out b/ql/src/test/results/clientpositive/llap/groupby_map_ppr.q.out
index b3e98113e16..38b5a9bb331 100644
--- a/ql/src/test/results/clientpositive/llap/groupby_map_ppr.q.out
+++ b/ql/src/test/results/clientpositive/llap/groupby_map_ppr.q.out
@@ -28,7 +28,7 @@ POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 POSTHOOK: Output: default@dest1_n144
-OPTIMIZED SQL: SELECT SUBSTR(`key`, 1, 1) AS `_o__c0`, COUNT(DISTINCT SUBSTR(`value`, 5)) AS `_o__c1`, SUBSTR(`key`, 1, 1) || SUM(SUBSTR(`value`, 5)) AS `_o__c2`
+OPTIMIZED SQL: SELECT SUBSTR(`key`, 1, 1) AS `_c0`, COUNT(DISTINCT SUBSTR(`value`, 5)) AS `_c1`, SUBSTR(`key`, 1, 1) || SUM(SUBSTR(`value`, 5)) AS `_c2`
 FROM `default`.`srcpart`
 WHERE `ds` = '2008-04-08'
 GROUP BY SUBSTR(`key`, 1, 1)
diff --git a/ql/src/test/results/clientpositive/llap/groupby_map_ppr_multi_distinct.q.out b/ql/src/test/results/clientpositive/llap/groupby_map_ppr_multi_distinct.q.out
index 404d820fac2..c06312a8e57 100644
--- a/ql/src/test/results/clientpositive/llap/groupby_map_ppr_multi_distinct.q.out
+++ b/ql/src/test/results/clientpositive/llap/groupby_map_ppr_multi_distinct.q.out
@@ -28,7 +28,7 @@ POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 POSTHOOK: Output: default@dest1_n174
-OPTIMIZED SQL: SELECT SUBSTR(`key`, 1, 1) AS `_o__c0`, COUNT(DISTINCT SUBSTR(`value`, 5)) AS `_o__c1`, SUBSTR(`key`, 1, 1) || SUM(SUBSTR(`value`, 5)) AS `_o__c2`, SUM(DISTINCT SUBSTR(`value`, 5)) AS `_o__c3`, COUNT(DISTINCT `value`) AS `_o__c4`
+OPTIMIZED SQL: SELECT SUBSTR(`key`, 1, 1) AS `_c0`, COUNT(DISTINCT SUBSTR(`value`, 5)) AS `_c1`, SUBSTR(`key`, 1, 1) || SUM(SUBSTR(`value`, 5)) AS `_c2`, SUM(DISTINCT SUBSTR(`value`, 5)) AS `_c3`, COUNT(DISTINCT `value`) AS `_c4`
 FROM `default`.`srcpart`
 WHERE `ds` = '2008-04-08'
 GROUP BY SUBSTR(`key`, 1, 1)
diff --git a/ql/src/test/results/clientpositive/llap/groupby_ppr.q.out b/ql/src/test/results/clientpositive/llap/groupby_ppr.q.out
index 3abf4008533..04a249f332f 100644
--- a/ql/src/test/results/clientpositive/llap/groupby_ppr.q.out
+++ b/ql/src/test/results/clientpositive/llap/groupby_ppr.q.out
@@ -28,7 +28,7 @@ POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 POSTHOOK: Output: default@dest1_n79
-OPTIMIZED SQL: SELECT SUBSTR(`key`, 1, 1) AS `_o__c0`, COUNT(DISTINCT SUBSTR(`value`, 5)) AS `_o__c1`, SUBSTR(`key`, 1, 1) || SUM(SUBSTR(`value`, 5)) AS `_o__c2`
+OPTIMIZED SQL: SELECT SUBSTR(`key`, 1, 1) AS `_c0`, COUNT(DISTINCT SUBSTR(`value`, 5)) AS `_c1`, SUBSTR(`key`, 1, 1) || SUM(SUBSTR(`value`, 5)) AS `_c2`
 FROM `default`.`srcpart`
 WHERE `ds` = '2008-04-08'
 GROUP BY SUBSTR(`key`, 1, 1)
diff --git a/ql/src/test/results/clientpositive/llap/groupby_ppr_multi_distinct.q.out b/ql/src/test/results/clientpositive/llap/groupby_ppr_multi_distinct.q.out
index 92b854ec157..5665d3c0894 100644
--- a/ql/src/test/results/clientpositive/llap/groupby_ppr_multi_distinct.q.out
+++ b/ql/src/test/results/clientpositive/llap/groupby_ppr_multi_distinct.q.out
@@ -28,7 +28,7 @@ POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 POSTHOOK: Output: default@dest1
-OPTIMIZED SQL: SELECT SUBSTR(`key`, 1, 1) AS `_o__c0`, COUNT(DISTINCT SUBSTR(`value`, 5)) AS `_o__c1`, SUBSTR(`key`, 1, 1) || SUM(SUBSTR(`value`, 5)) AS `_o__c2`, SUM(DISTINCT SUBSTR(`value`, 5)) AS `_o__c3`, COUNT(DISTINCT `value`) AS `_o__c4`
+OPTIMIZED SQL: SELECT SUBSTR(`key`, 1, 1) AS `_c0`, COUNT(DISTINCT SUBSTR(`value`, 5)) AS `_c1`, SUBSTR(`key`, 1, 1) || SUM(SUBSTR(`value`, 5)) AS `_c2`, SUM(DISTINCT SUBSTR(`value`, 5)) AS `_c3`, COUNT(DISTINCT `value`) AS `_c4`
 FROM `default`.`srcpart`
 WHERE `ds` = '2008-04-08'
 GROUP BY SUBSTR(`key`, 1, 1)
diff --git a/ql/src/test/results/clientpositive/llap/groupby_sort_1_23.q.out b/ql/src/test/results/clientpositive/llap/groupby_sort_1_23.q.out
index 7f9364a5959..191f46cb994 100644
--- a/ql/src/test/results/clientpositive/llap/groupby_sort_1_23.q.out
+++ b/ql/src/test/results/clientpositive/llap/groupby_sort_1_23.q.out
@@ -46,7 +46,7 @@ SELECT key, count(1) FROM T1_n80 GROUP BY key
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n80
 POSTHOOK: Output: default@outputtbl1_n18
-OPTIMIZED SQL: SELECT `key`, COUNT(*) AS `$f1`
+OPTIMIZED SQL: SELECT `key`, COUNT(*) AS `_c1`
 FROM `default`.`t1_n80`
 GROUP BY `key`
 STAGE DEPENDENCIES:
@@ -289,7 +289,7 @@ SELECT key, val, count(1) FROM T1_n80 GROUP BY key, val
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n80
 POSTHOOK: Output: default@outputtbl2_n5
-OPTIMIZED SQL: SELECT `key`, `val`, COUNT(*) AS `$f2`
+OPTIMIZED SQL: SELECT `key`, `val`, COUNT(*) AS `_c2`
 FROM `default`.`t1_n80`
 GROUP BY `key`, `val`
 STAGE DEPENDENCIES:
@@ -549,7 +549,7 @@ SELECT key, count(1) FROM (SELECT key, val FROM T1_n80) subq1 GROUP BY key
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n80
 POSTHOOK: Output: default@outputtbl1_n18
-OPTIMIZED SQL: SELECT `key`, COUNT(*) AS `$f1`
+OPTIMIZED SQL: SELECT `key`, COUNT(*) AS `_c1`
 FROM `default`.`t1_n80`
 GROUP BY `key`
 STAGE DEPENDENCIES:
@@ -784,7 +784,7 @@ SELECT k, count(1) FROM (SELECT key as k, val as v FROM T1_n80) subq1 GROUP BY k
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n80
 POSTHOOK: Output: default@outputtbl1_n18
-OPTIMIZED SQL: SELECT `key`, COUNT(*) AS `$f1`
+OPTIMIZED SQL: SELECT `key` AS `k`, COUNT(*) AS `_c1`
 FROM `default`.`t1_n80`
 GROUP BY `key`
 STAGE DEPENDENCIES:
@@ -1027,7 +1027,7 @@ SELECT 1, key, count(1) FROM T1_n80 GROUP BY 1, key
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n80
 POSTHOOK: Output: default@outputtbl3_n2
-OPTIMIZED SQL: SELECT 1 AS `_o__c0`, `key`, COUNT(*) AS `_o__c2`
+OPTIMIZED SQL: SELECT 1 AS `_c0`, `key`, COUNT(*) AS `_c2`
 FROM `default`.`t1_n80`
 GROUP BY `key`
 STAGE DEPENDENCIES:
@@ -1271,7 +1271,7 @@ SELECT key, 1, val, count(1) FROM T1_n80 GROUP BY key, 1, val
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n80
 POSTHOOK: Output: default@outputtbl4_n2
-OPTIMIZED SQL: SELECT `key`, 1 AS `_o__c1`, `val`, COUNT(*) AS `_o__c3`
+OPTIMIZED SQL: SELECT `key`, 1 AS `_c1`, `val`, COUNT(*) AS `_c3`
 FROM `default`.`t1_n80`
 GROUP BY `key`, `val`
 STAGE DEPENDENCIES:
@@ -1532,7 +1532,7 @@ SELECT key, key + 1, count(1) FROM T1_n80 GROUP BY key, key + 1
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n80
 POSTHOOK: Output: default@outputtbl3_n2
-OPTIMIZED SQL: SELECT `key` AS `$f0`, CAST(`key` AS DOUBLE) + 1 AS `$f1`, COUNT(*) AS `$f2`
+OPTIMIZED SQL: SELECT `key`, CAST(`key` AS DOUBLE) + 1 AS `_c1`, COUNT(*) AS `_c2`
 FROM `default`.`t1_n80`
 GROUP BY `key`, CAST(`key` AS DOUBLE) + 1
 STAGE DEPENDENCIES:
@@ -1795,7 +1795,7 @@ group by key + key
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n80
 POSTHOOK: Output: default@outputtbl1_n18
-OPTIMIZED SQL: SELECT `$f0`, SUM(`$f1`) AS `$f1`
+OPTIMIZED SQL: SELECT `$f0` AS `_c0`, SUM(`$f1`) AS `_c1`
 FROM (SELECT CAST(`key` AS DOUBLE) + CAST(`key` AS DOUBLE) AS `$f0`, COUNT(*) AS `$f1`
 FROM `default`.`t1_n80`
 GROUP BY `key`) AS `t0`
@@ -2077,13 +2077,14 @@ SELECT key, count(1) FROM T1_n80 GROUP BY key
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n80
 POSTHOOK: Output: default@outputtbl1_n18
-OPTIMIZED SQL: SELECT `key`, COUNT(*) AS `$f1`
+OPTIMIZED SQL: SELECT `key` AS `subq1.key`, `$f1` AS `subq1._c1`
+FROM (SELECT `key`, COUNT(*) AS `$f1`
 FROM `default`.`t1_n80`
 GROUP BY `key`
 UNION ALL
 SELECT `key`, COUNT(*) AS `$f1`
 FROM `default`.`t1_n80`
-GROUP BY `key`
+GROUP BY `key`) AS `t3`
 STAGE DEPENDENCIES:
   Stage-1 is a root stage
   Stage-2 depends on stages: Stage-1
@@ -2450,13 +2451,14 @@ SELECT cast(key + key as string) as key, count(1) FROM T1_n80 GROUP BY key + key
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n80
 POSTHOOK: Output: default@outputtbl1_n18
-OPTIMIZED SQL: SELECT `key`, COUNT(*) AS `$f1`
+OPTIMIZED SQL: SELECT `key` AS `subq1.key`, `$f1` AS `subq1._c1`
+FROM (SELECT `key`, COUNT(*) AS `$f1`
 FROM `default`.`t1_n80`
 GROUP BY `key`
 UNION ALL
 SELECT CAST(CAST(`key` AS DOUBLE) + CAST(`key` AS DOUBLE) AS STRING) AS `key`, COUNT(*) AS `_o__c1`
 FROM `default`.`t1_n80`
-GROUP BY CAST(`key` AS DOUBLE) + CAST(`key` AS DOUBLE)
+GROUP BY CAST(`key` AS DOUBLE) + CAST(`key` AS DOUBLE)) AS `t4`
 STAGE DEPENDENCIES:
   Stage-1 is a root stage
   Stage-2 depends on stages: Stage-1
@@ -2849,7 +2851,7 @@ ON subq1.key = subq2.key
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n80
 POSTHOOK: Output: default@outputtbl1_n18
-OPTIMIZED SQL: SELECT `t1`.`key`, `t1`.`$f1` + `t4`.`$f1` AS `_o__c1`
+OPTIMIZED SQL: SELECT `t1`.`key` AS `subq1.key`, `t1`.`$f1` + `t4`.`$f1` AS `_c1`
 FROM (SELECT `key`, COUNT(*) AS `$f1`
 FROM `default`.`t1_n80`
 WHERE `key` IS NOT NULL
@@ -3170,7 +3172,7 @@ ON subq1.key = subq2.key
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n80
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT *
+OPTIMIZED SQL: SELECT `t1`.`key` AS `subq1.key`, `t1`.`$f1` AS `subq1._c1`, `t4`.`key` AS `subq2.key`, `t4`.`val` AS `subq2.val`, `t4`.`$f2` AS `subq2._c2`
 FROM (SELECT `key`, COUNT(*) AS `$f1`
 FROM `default`.`t1_n80`
 WHERE `key` IS NOT NULL
@@ -3379,7 +3381,7 @@ SELECT key, count(1) FROM T2_n49 GROUP BY key
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t2_n49
 POSTHOOK: Output: default@outputtbl1_n18
-OPTIMIZED SQL: SELECT `key`, COUNT(*) AS `$f1`
+OPTIMIZED SQL: SELECT `key`, COUNT(*) AS `_c1`
 FROM `default`.`t2_n49`
 GROUP BY `key`
 STAGE DEPENDENCIES:
@@ -3638,7 +3640,7 @@ SELECT key, 1, val, count(1) FROM T2_n49 GROUP BY key, 1, val
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t2_n49
 POSTHOOK: Output: default@outputtbl4_n2
-OPTIMIZED SQL: SELECT `key`, 1 AS `_o__c1`, `val`, COUNT(*) AS `_o__c3`
+OPTIMIZED SQL: SELECT `key`, 1 AS `_c1`, `val`, COUNT(*) AS `_c3`
 FROM `default`.`t2_n49`
 GROUP BY `key`, `val`
 STAGE DEPENDENCIES:
@@ -3884,7 +3886,7 @@ SELECT key, 1, val, 2, count(1) FROM T2_n49 GROUP BY key, 1, val, 2
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t2_n49
 POSTHOOK: Output: default@outputtbl5_n2
-OPTIMIZED SQL: SELECT `key`, 1 AS `_o__c1`, `val`, 2 AS `_o__c3`, COUNT(*) AS `_o__c4`
+OPTIMIZED SQL: SELECT `key`, 1 AS `_c1`, `val`, 2 AS `_c3`, COUNT(*) AS `_c4`
 FROM `default`.`t2_n49`
 GROUP BY `key`, `val`
 STAGE DEPENDENCIES:
@@ -4129,7 +4131,7 @@ group by key, constant, val
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t2_n49
 POSTHOOK: Output: default@outputtbl4_n2
-OPTIMIZED SQL: SELECT `key`, 1 AS `constant`, `val`, COUNT(*) AS `_o__c3`
+OPTIMIZED SQL: SELECT `key`, 1 AS `constant`, `val`, COUNT(*) AS `_c3`
 FROM `default`.`t2_n49`
 GROUP BY `key`, `val`
 STAGE DEPENDENCIES:
@@ -4381,7 +4383,7 @@ group by key, constant3, val
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t2_n49
 POSTHOOK: Output: default@outputtbl4_n2
-OPTIMIZED SQL: SELECT `key`, 2 AS `constant3`, `val`, COUNT(*) AS `_o__c3`
+OPTIMIZED SQL: SELECT `key`, 2 AS `constant3`, `val`, COUNT(*) AS `_c3`
 FROM `default`.`t2_n49`
 GROUP BY `key`, `val`
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/groupby_sort_6.q.out b/ql/src/test/results/clientpositive/llap/groupby_sort_6.q.out
index 73b2e16323e..00029efca14 100644
--- a/ql/src/test/results/clientpositive/llap/groupby_sort_6.q.out
+++ b/ql/src/test/results/clientpositive/llap/groupby_sort_6.q.out
@@ -26,7 +26,7 @@ SELECT key, count(1) FROM T1_n61 where ds = '1' GROUP BY key
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n61
 POSTHOOK: Output: default@outputtbl1_n15
-OPTIMIZED SQL: SELECT `key`, COUNT(*) AS `$f1`
+OPTIMIZED SQL: SELECT `key`, COUNT(*) AS `_c1`
 FROM `default`.`t1_n61`
 WHERE `ds` = '1'
 GROUP BY `key`
@@ -252,7 +252,7 @@ SELECT key, count(1) FROM T1_n61 where ds = '1' GROUP BY key
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n61
 POSTHOOK: Output: default@outputtbl1_n15
-OPTIMIZED SQL: SELECT `key`, COUNT(*) AS `$f1`
+OPTIMIZED SQL: SELECT `key`, COUNT(*) AS `_c1`
 FROM `default`.`t1_n61`
 WHERE `ds` = '1'
 GROUP BY `key`
@@ -471,7 +471,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n61
 POSTHOOK: Input: default@t1_n61@ds=2
 POSTHOOK: Output: default@outputtbl1_n15
-OPTIMIZED SQL: SELECT `key`, COUNT(*) AS `$f1`
+OPTIMIZED SQL: SELECT `key`, COUNT(*) AS `_c1`
 FROM `default`.`t1_n61`
 WHERE `ds` = '2'
 GROUP BY `key`
diff --git a/ql/src/test/results/clientpositive/llap/groupby_sort_skew_1_23.q.out b/ql/src/test/results/clientpositive/llap/groupby_sort_skew_1_23.q.out
index bd22fe80f97..ecc1b78ed69 100644
--- a/ql/src/test/results/clientpositive/llap/groupby_sort_skew_1_23.q.out
+++ b/ql/src/test/results/clientpositive/llap/groupby_sort_skew_1_23.q.out
@@ -46,7 +46,7 @@ SELECT key, count(1) FROM T1_n56 GROUP BY key
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n56
 POSTHOOK: Output: default@outputtbl1_n13
-OPTIMIZED SQL: SELECT `key`, COUNT(*) AS `$f1`
+OPTIMIZED SQL: SELECT `key`, COUNT(*) AS `_c1`
 FROM `default`.`t1_n56`
 GROUP BY `key`
 STAGE DEPENDENCIES:
@@ -289,7 +289,7 @@ SELECT key, val, count(1) FROM T1_n56 GROUP BY key, val
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n56
 POSTHOOK: Output: default@outputtbl2_n3
-OPTIMIZED SQL: SELECT `key`, `val`, COUNT(*) AS `$f2`
+OPTIMIZED SQL: SELECT `key`, `val`, COUNT(*) AS `_c2`
 FROM `default`.`t1_n56`
 GROUP BY `key`, `val`
 STAGE DEPENDENCIES:
@@ -571,7 +571,7 @@ SELECT key, count(1) FROM (SELECT key, val FROM T1_n56) subq1 GROUP BY key
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n56
 POSTHOOK: Output: default@outputtbl1_n13
-OPTIMIZED SQL: SELECT `key`, COUNT(*) AS `$f1`
+OPTIMIZED SQL: SELECT `key`, COUNT(*) AS `_c1`
 FROM `default`.`t1_n56`
 GROUP BY `key`
 STAGE DEPENDENCIES:
@@ -806,7 +806,7 @@ SELECT k, count(1) FROM (SELECT key as k, val as v FROM T1_n56) subq1 GROUP BY k
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n56
 POSTHOOK: Output: default@outputtbl1_n13
-OPTIMIZED SQL: SELECT `key`, COUNT(*) AS `$f1`
+OPTIMIZED SQL: SELECT `key` AS `k`, COUNT(*) AS `_c1`
 FROM `default`.`t1_n56`
 GROUP BY `key`
 STAGE DEPENDENCIES:
@@ -1049,7 +1049,7 @@ SELECT 1, key, count(1) FROM T1_n56 GROUP BY 1, key
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n56
 POSTHOOK: Output: default@outputtbl3_n1
-OPTIMIZED SQL: SELECT 1 AS `_o__c0`, `key`, COUNT(*) AS `_o__c2`
+OPTIMIZED SQL: SELECT 1 AS `_c0`, `key`, COUNT(*) AS `_c2`
 FROM `default`.`t1_n56`
 GROUP BY `key`
 STAGE DEPENDENCIES:
@@ -1293,7 +1293,7 @@ SELECT key, 1, val, count(1) FROM T1_n56 GROUP BY key, 1, val
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n56
 POSTHOOK: Output: default@outputtbl4_n1
-OPTIMIZED SQL: SELECT `key`, 1 AS `_o__c1`, `val`, COUNT(*) AS `_o__c3`
+OPTIMIZED SQL: SELECT `key`, 1 AS `_c1`, `val`, COUNT(*) AS `_c3`
 FROM `default`.`t1_n56`
 GROUP BY `key`, `val`
 STAGE DEPENDENCIES:
@@ -1576,7 +1576,7 @@ SELECT key, key + 1, count(1) FROM T1_n56 GROUP BY key, key + 1
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n56
 POSTHOOK: Output: default@outputtbl3_n1
-OPTIMIZED SQL: SELECT `key` AS `$f0`, CAST(`key` AS DOUBLE) + 1 AS `$f1`, COUNT(*) AS `$f2`
+OPTIMIZED SQL: SELECT `key`, CAST(`key` AS DOUBLE) + 1 AS `_c1`, COUNT(*) AS `_c2`
 FROM `default`.`t1_n56`
 GROUP BY `key`, CAST(`key` AS DOUBLE) + 1
 STAGE DEPENDENCIES:
@@ -1861,7 +1861,7 @@ group by key + key
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n56
 POSTHOOK: Output: default@outputtbl1_n13
-OPTIMIZED SQL: SELECT CAST(`$f0` AS STRING) AS `_o__c0`, SUM(`$f1`) AS `_o__c1`
+OPTIMIZED SQL: SELECT CAST(`$f0` AS STRING) AS `_c0`, SUM(`$f1`) AS `_c1`
 FROM (SELECT CAST(`key` AS DOUBLE) + CAST(`key` AS DOUBLE) AS `$f0`, COUNT(*) AS `$f1`
 FROM `default`.`t1_n56`
 GROUP BY `key`) AS `t0`
@@ -2165,13 +2165,14 @@ SELECT key, count(1) FROM T1_n56 GROUP BY key
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n56
 POSTHOOK: Output: default@outputtbl1_n13
-OPTIMIZED SQL: SELECT `key`, COUNT(*) AS `$f1`
+OPTIMIZED SQL: SELECT `key` AS `subq1.key`, `$f1` AS `subq1._c1`
+FROM (SELECT `key`, COUNT(*) AS `$f1`
 FROM `default`.`t1_n56`
 GROUP BY `key`
 UNION ALL
 SELECT `key`, COUNT(*) AS `$f1`
 FROM `default`.`t1_n56`
-GROUP BY `key`
+GROUP BY `key`) AS `t3`
 STAGE DEPENDENCIES:
   Stage-1 is a root stage
   Stage-2 depends on stages: Stage-1
@@ -2538,13 +2539,14 @@ SELECT cast(key + key as string) as key, count(1) FROM T1_n56 GROUP BY key + key
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n56
 POSTHOOK: Output: default@outputtbl1_n13
-OPTIMIZED SQL: SELECT `key`, COUNT(*) AS `$f1`
+OPTIMIZED SQL: SELECT `key` AS `subq1.key`, `$f1` AS `subq1._c1`
+FROM (SELECT `key`, COUNT(*) AS `$f1`
 FROM `default`.`t1_n56`
 GROUP BY `key`
 UNION ALL
 SELECT CAST(CAST(`key` AS DOUBLE) + CAST(`key` AS DOUBLE) AS STRING) AS `key`, COUNT(*) AS `_o__c1`
 FROM `default`.`t1_n56`
-GROUP BY CAST(`key` AS DOUBLE) + CAST(`key` AS DOUBLE)
+GROUP BY CAST(`key` AS DOUBLE) + CAST(`key` AS DOUBLE)) AS `t4`
 STAGE DEPENDENCIES:
   Stage-1 is a root stage
   Stage-2 depends on stages: Stage-1
@@ -2959,7 +2961,7 @@ ON subq1.key = subq2.key
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n56
 POSTHOOK: Output: default@outputtbl1_n13
-OPTIMIZED SQL: SELECT `t1`.`key`, `t1`.`$f1` + `t4`.`$f1` AS `_o__c1`
+OPTIMIZED SQL: SELECT `t1`.`key` AS `subq1.key`, `t1`.`$f1` + `t4`.`$f1` AS `_c1`
 FROM (SELECT `key`, COUNT(*) AS `$f1`
 FROM `default`.`t1_n56`
 WHERE `key` IS NOT NULL
@@ -3280,7 +3282,7 @@ ON subq1.key = subq2.key
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1_n56
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT *
+OPTIMIZED SQL: SELECT `t1`.`key` AS `subq1.key`, `t1`.`$f1` AS `subq1._c1`, `t4`.`key` AS `subq2.key`, `t4`.`val` AS `subq2.val`, `t4`.`$f2` AS `subq2._c2`
 FROM (SELECT `key`, COUNT(*) AS `$f1`
 FROM `default`.`t1_n56`
 WHERE `key` IS NOT NULL
@@ -3511,7 +3513,7 @@ SELECT key, count(1) FROM T2_n34 GROUP BY key
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t2_n34
 POSTHOOK: Output: default@outputtbl1_n13
-OPTIMIZED SQL: SELECT `key`, COUNT(*) AS `$f1`
+OPTIMIZED SQL: SELECT `key`, COUNT(*) AS `_c1`
 FROM `default`.`t2_n34`
 GROUP BY `key`
 STAGE DEPENDENCIES:
@@ -3792,7 +3794,7 @@ SELECT key, 1, val, count(1) FROM T2_n34 GROUP BY key, 1, val
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t2_n34
 POSTHOOK: Output: default@outputtbl4_n1
-OPTIMIZED SQL: SELECT `key`, 1 AS `_o__c1`, `val`, COUNT(*) AS `_o__c3`
+OPTIMIZED SQL: SELECT `key`, 1 AS `_c1`, `val`, COUNT(*) AS `_c3`
 FROM `default`.`t2_n34`
 GROUP BY `key`, `val`
 STAGE DEPENDENCIES:
@@ -4038,7 +4040,7 @@ SELECT key, 1, val, 2, count(1) FROM T2_n34 GROUP BY key, 1, val, 2
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t2_n34
 POSTHOOK: Output: default@outputtbl5_n1
-OPTIMIZED SQL: SELECT `key`, 1 AS `_o__c1`, `val`, 2 AS `_o__c3`, COUNT(*) AS `_o__c4`
+OPTIMIZED SQL: SELECT `key`, 1 AS `_c1`, `val`, 2 AS `_c3`, COUNT(*) AS `_c4`
 FROM `default`.`t2_n34`
 GROUP BY `key`, `val`
 STAGE DEPENDENCIES:
@@ -4283,7 +4285,7 @@ group by key, constant, val
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t2_n34
 POSTHOOK: Output: default@outputtbl4_n1
-OPTIMIZED SQL: SELECT `key`, 1 AS `constant`, `val`, COUNT(*) AS `_o__c3`
+OPTIMIZED SQL: SELECT `key`, 1 AS `constant`, `val`, COUNT(*) AS `_c3`
 FROM `default`.`t2_n34`
 GROUP BY `key`, `val`
 STAGE DEPENDENCIES:
@@ -4535,7 +4537,7 @@ group by key, constant3, val
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t2_n34
 POSTHOOK: Output: default@outputtbl4_n1
-OPTIMIZED SQL: SELECT `key`, 2 AS `constant3`, `val`, COUNT(*) AS `_o__c3`
+OPTIMIZED SQL: SELECT `key`, 2 AS `constant3`, `val`, COUNT(*) AS `_c3`
 FROM `default`.`t2_n34`
 GROUP BY `key`, `val`
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/having_distinct_function.q.out b/ql/src/test/results/clientpositive/llap/having_distinct_function.q.out
index 4b96e26bc05..982737677d8 100644
--- a/ql/src/test/results/clientpositive/llap/having_distinct_function.q.out
+++ b/ql/src/test/results/clientpositive/llap/having_distinct_function.q.out
@@ -43,11 +43,12 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t
 #### A masked pattern was here ####
 CBO PLAN:
-HiveFilter(condition=[>($1, 1)])
-  HiveAggregate(group=[{0}], agg#0=[count($1)])
-    HiveProject(col0=[$0], col1=[$1])
-      HiveAggregate(group=[{0, 1}])
-        HiveTableScan(table=[[default, t]], table:alias=[t])
+HiveProject(col0=[$0], _c1=[$1])
+  HiveFilter(condition=[>($1, 1)])
+    HiveAggregate(group=[{0}], agg#0=[count($1)])
+      HiveProject(col0=[$0], col1=[$1])
+        HiveAggregate(group=[{0, 1}])
+          HiveTableScan(table=[[default, t]], table:alias=[t])
 
 PREHOOK: query: select col0, count(distinct col1) from t
 group by col0
diff --git a/ql/src/test/results/clientpositive/llap/in_typecheck_char.q.out b/ql/src/test/results/clientpositive/llap/in_typecheck_char.q.out
index f963d68ba3e..e3a0c8d590a 100644
--- a/ql/src/test/results/clientpositive/llap/in_typecheck_char.q.out
+++ b/ql/src/test/results/clientpositive/llap/in_typecheck_char.q.out
@@ -304,9 +304,10 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@ax
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{}], agg#0=[count()])
-  HiveFilter(condition=[IN($1, _UTF-16LE'a         ', _UTF-16LE'bb        ', _UTF-16LE'aa        ', _UTF-16LE'bbb       ', _UTF-16LE'ab        ', _UTF-16LE'ba        ', _UTF-16LE'aaa       ', _UTF-16LE'bbb       ', _UTF-16LE'abc       ', _UTF-16LE'bc        ', _UTF-16LE'ac        ', _UTF-16LE'bca       ', _UTF-16LE'cab       ', _UTF-16LE'cb        ', _UTF-16LE'ca        ', _UTF-16LE'cbc       ', _UTF-16LE'z         ')])
-    HiveTableScan(table=[[default, ax]], table:alias=[ax])
+HiveProject(_c0=[$0])
+  HiveAggregate(group=[{}], agg#0=[count()])
+    HiveFilter(condition=[IN($1, _UTF-16LE'a         ', _UTF-16LE'bb        ', _UTF-16LE'aa        ', _UTF-16LE'bbb       ', _UTF-16LE'ab        ', _UTF-16LE'ba        ', _UTF-16LE'aaa       ', _UTF-16LE'bbb       ', _UTF-16LE'abc       ', _UTF-16LE'bc        ', _UTF-16LE'ac        ', _UTF-16LE'bca       ', _UTF-16LE'cab       ', _UTF-16LE'cb        ', _UTF-16LE'ca        ', _UTF-16LE'cbc       ', _UTF-16LE'z         ')])
+      HiveTableScan(table=[[default, ax]], table:alias=[ax])
 
 PREHOOK: query: explain select count(*) from ax where t in
 ('a','bb','aa','bbb','ab','ba','aaa','bbb','abc','bc','ac','bca','cab','cb','ca','cbc','z')
@@ -387,9 +388,10 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@ax
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{}], agg#0=[count()])
-  HiveFilter(condition=[IN($1, _UTF-16LE'a', _UTF-16LE'aa', _UTF-16LE'aaa', _UTF-16LE'ab', _UTF-16LE'abc', _UTF-16LE'ac', _UTF-16LE'ba', _UTF-16LE'bb', _UTF-16LE'bbb', _UTF-16LE'bc', _UTF-16LE'bca', _UTF-16LE'ca', _UTF-16LE'cab', _UTF-16LE'cb', _UTF-16LE'cbc', _UTF-16LE'z')])
-    HiveTableScan(table=[[default, ax]], table:alias=[ax])
+HiveProject(_c0=[$0])
+  HiveAggregate(group=[{}], agg#0=[count()])
+    HiveFilter(condition=[IN($1, _UTF-16LE'a', _UTF-16LE'aa', _UTF-16LE'aaa', _UTF-16LE'ab', _UTF-16LE'abc', _UTF-16LE'ac', _UTF-16LE'ba', _UTF-16LE'bb', _UTF-16LE'bbb', _UTF-16LE'bc', _UTF-16LE'bca', _UTF-16LE'ca', _UTF-16LE'cab', _UTF-16LE'cb', _UTF-16LE'cbc', _UTF-16LE'z')])
+      HiveTableScan(table=[[default, ax]], table:alias=[ax])
 
 PREHOOK: query: explain select count(*) from ax where t in
 ('a','bb','aa','bbb','ab','ba','aaa','bbb','abc','bc','ac','bca','cab','cb','ca','cbc','z')
diff --git a/ql/src/test/results/clientpositive/llap/input23.q.out b/ql/src/test/results/clientpositive/llap/input23.q.out
index 1816ed50218..aa539d85707 100644
--- a/ql/src/test/results/clientpositive/llap/input23.q.out
+++ b/ql/src/test/results/clientpositive/llap/input23.q.out
@@ -11,7 +11,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, CAST('2008-04-08' AS STRING) AS `ds`, CAST('11' AS STRING) AS `hr`, `t2`.`key` AS `key1`, `t2`.`value` AS `value1`, CAST('2008-04-08' AS STRING) AS `ds1`, CAST('14' AS STRING) AS `hr1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, CAST('2008-04-08' AS STRING) AS `a.ds`, CAST('11' AS STRING) AS `a.hr`, `t2`.`key` AS `b.key`, `t2`.`value` AS `b.value`, CAST('2008-04-08' AS STRING) AS `b.ds`, CAST('14' AS STRING) AS `b.hr`
 FROM (SELECT `key`, `value`
 FROM `default`.`srcpart`
 WHERE `ds` = '2008-04-08' AND `hr` = '11') AS `t0`,
diff --git a/ql/src/test/results/clientpositive/llap/input4.q.out b/ql/src/test/results/clientpositive/llap/input4.q.out
index c393885835d..39af9c3b48c 100644
--- a/ql/src/test/results/clientpositive/llap/input4.q.out
+++ b/ql/src/test/results/clientpositive/llap/input4.q.out
@@ -53,7 +53,7 @@ SELECT Input4Alias.VALUE, Input4Alias.KEY FROM INPUT4_n0 AS Input4Alias
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@input4_n0
 #### A masked pattern was here ####
-{"CBOPlan":"{\n  \"rels\": [\n    {\n      \"id\": \"0\",\n      \"relOp\": \"org.apache.hadoop.hive.ql.optimizer.calcite.reloperators.HiveTableScan\",\n      \"table\": [\n        \"default\",\n        \"input4_n0\"\n      ],\n      \"table:alias\": \"input4alias\",\n      \"inputs\": [],\n      \"rowCount\": 1.0,\n      \"avgRowSize\": 200.0,\n      \"rowType\": {\n        \"fields\": [\n          {\n            \"type\": \"VARCHAR\",\n            \"nullable\": true,\n            \"pre [...]
+{"CBOPlan":"{\n  \"rels\": [\n    {\n      \"id\": \"0\",\n      \"relOp\": \"org.apache.hadoop.hive.ql.optimizer.calcite.reloperators.HiveTableScan\",\n      \"table\": [\n        \"default\",\n        \"input4_n0\"\n      ],\n      \"table:alias\": \"input4alias\",\n      \"inputs\": [],\n      \"rowCount\": 1.0,\n      \"avgRowSize\": 200.0,\n      \"rowType\": {\n        \"fields\": [\n          {\n            \"type\": \"VARCHAR\",\n            \"nullable\": true,\n            \"pre [...]
 PREHOOK: query: SELECT Input4Alias.VALUE, Input4Alias.KEY FROM INPUT4_n0 AS Input4Alias
 PREHOOK: type: QUERY
 PREHOOK: Input: default@input4_n0
diff --git a/ql/src/test/results/clientpositive/llap/input42.q.out b/ql/src/test/results/clientpositive/llap/input42.q.out
index 8b0ba89ab4d..d6194442e79 100644
--- a/ql/src/test/results/clientpositive/llap/input42.q.out
+++ b/ql/src/test/results/clientpositive/llap/input42.q.out
@@ -12,7 +12,7 @@ POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, `value`, CAST('2008-04-08' AS STRING) AS `ds`, `hr`
+OPTIMIZED SQL: SELECT `key` AS `a.key`, `value` AS `a.value`, CAST('2008-04-08' AS STRING) AS `a.ds`, `hr` AS `a.hr`
 FROM `default`.`srcpart`
 WHERE `ds` = '2008-04-08'
 STAGE DEPENDENCIES:
@@ -1129,7 +1129,7 @@ POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, `value`, CAST('2008-04-08' AS STRING) AS `ds`, `hr`
+OPTIMIZED SQL: SELECT `key` AS `a.key`, `value` AS `a.value`, CAST('2008-04-08' AS STRING) AS `a.ds`, `hr` AS `a.hr`
 FROM `default`.`srcpart`
 WHERE `key` < 200 AND `ds` = '2008-04-08'
 STAGE DEPENDENCIES:
@@ -1627,7 +1627,7 @@ POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, `value`, CAST('2008-04-08' AS STRING) AS `ds`, `hr`
+OPTIMIZED SQL: SELECT `key` AS `a.key`, `value` AS `a.value`, CAST('2008-04-08' AS STRING) AS `a.ds`, `hr` AS `a.hr`
 FROM `default`.`srcpart`
 WHERE `ds` = '2008-04-08' AND RAND(100) < 0.1
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/input_part1.q.out b/ql/src/test/results/clientpositive/llap/input_part1.q.out
index 3a69634c074..f99bf183b36 100644
--- a/ql/src/test/results/clientpositive/llap/input_part1.q.out
+++ b/ql/src/test/results/clientpositive/llap/input_part1.q.out
@@ -20,7 +20,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 POSTHOOK: Output: default@dest1_n45
-OPTIMIZED SQL: SELECT `key`, `value`, CAST('12' AS STRING) AS `hr`, CAST('2008-04-08' AS STRING) AS `ds`
+OPTIMIZED SQL: SELECT `key` AS `srcpart.key`, `value` AS `srcpart.value`, CAST('12' AS STRING) AS `srcpart.hr`, CAST('2008-04-08' AS STRING) AS `srcpart.ds`
 FROM `default`.`srcpart`
 WHERE `key` < 100 AND `ds` = '2008-04-08' AND `hr` = '12'
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/input_part9.q.out b/ql/src/test/results/clientpositive/llap/input_part9.q.out
index 5c6449ae850..d90451f5f6a 100644
--- a/ql/src/test/results/clientpositive/llap/input_part9.q.out
+++ b/ql/src/test/results/clientpositive/llap/input_part9.q.out
@@ -12,7 +12,7 @@ POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, `value`, CAST('2008-04-08' AS STRING) AS `ds`, `hr`
+OPTIMIZED SQL: SELECT `key` AS `x.key`, `value` AS `x.value`, CAST('2008-04-08' AS STRING) AS `x.ds`, `hr` AS `x.hr`
 FROM `default`.`srcpart`
 WHERE `ds` = '2008-04-08' AND `key` IS NOT NULL
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/intersect_all_rj.q.out b/ql/src/test/results/clientpositive/llap/intersect_all_rj.q.out
index a5857239812..51fb71412ba 100644
--- a/ql/src/test/results/clientpositive/llap/intersect_all_rj.q.out
+++ b/ql/src/test/results/clientpositive/llap/intersect_all_rj.q.out
@@ -169,7 +169,7 @@ POSTHOOK: Input: default@table_16
 POSTHOOK: Input: default@table_7
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject($f0=[$1])
+HiveProject(timestamp_col=[$1])
   HiveTableFunctionScan(invocation=[replicate_rows($0, $1)], rowType=[RecordType(BIGINT $f0, TIMESTAMP(9) $f1)])
     HiveProject($f0=[$2], $f1=[$0])
       HiveFilter(condition=[=($1, 2)])
diff --git a/ql/src/test/results/clientpositive/llap/jdbc_filter_expand_row_operator.q.out b/ql/src/test/results/clientpositive/llap/jdbc_filter_expand_row_operator.q.out
index 515688f2f1c..8cb344fc76d 100644
--- a/ql/src/test/results/clientpositive/llap/jdbc_filter_expand_row_operator.q.out
+++ b/ql/src/test/results/clientpositive/llap/jdbc_filter_expand_row_operator.q.out
@@ -35,7 +35,9 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@book
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJdbcConverter(convention=[JDBC.POSTGRES])
-  JdbcFilter(condition=[AND(OR(=($0, 0), AND(=($0, 1), =($2, 11)), AND(=($0, 2), =($2, 22))), IN($0, 0, 1, 2))])
-    JdbcHiveTableScan(table=[[default, book]], table:alias=[book])
+HiveProject(book.id=[$0], book.title=[$1], book.author=[$2])
+  HiveProject(id=[$0], title=[$1], author=[$2])
+    HiveJdbcConverter(convention=[JDBC.POSTGRES])
+      JdbcFilter(condition=[AND(OR(=($0, 0), AND(=($0, 1), =($2, 11)), AND(=($0, 2), =($2, 22))), IN($0, 0, 1, 2))])
+        JdbcHiveTableScan(table=[[default, book]], table:alias=[book])
 
diff --git a/ql/src/test/results/clientpositive/llap/jdbc_project_pushdown.q.out b/ql/src/test/results/clientpositive/llap/jdbc_project_pushdown.q.out
index ab8685ae874..d3eb7a8cf7f 100644
--- a/ql/src/test/results/clientpositive/llap/jdbc_project_pushdown.q.out
+++ b/ql/src/test/results/clientpositive/llap/jdbc_project_pushdown.q.out
@@ -79,11 +79,13 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@book
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJdbcConverter(convention=[JDBC.POSTGRES])
-  JdbcProject(id=[$0])
-    JdbcFilter(condition=[=(SUBSTRING($1, 0, 4), _UTF-16LE'Les')])
-      JdbcProject(id=[$0], title=[$1])
-        JdbcHiveTableScan(table=[[default, book]], table:alias=[book])
+HiveProject(id=[$0])
+  HiveProject(id=[$0])
+    HiveJdbcConverter(convention=[JDBC.POSTGRES])
+      JdbcProject(id=[$0])
+        JdbcFilter(condition=[=(SUBSTRING($1, 0, 4), _UTF-16LE'Les')])
+          JdbcProject(id=[$0], title=[$1])
+            JdbcHiveTableScan(table=[[default, book]], table:alias=[book])
 
 PREHOOK: query: explain select id from book where substring(title, 0, 4) = 'Les'
 PREHOOK: type: QUERY
@@ -195,17 +197,19 @@ POSTHOOK: Input: default@author
 POSTHOOK: Input: default@book
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJdbcConverter(convention=[JDBC.POSTGRES])
-  JdbcProject(title=[$0], fname=[$3])
-    JdbcJoin(condition=[=($1, $2)], joinType=[inner])
-      JdbcProject(title=[$0], author=[$1])
-        JdbcFilter(condition=[IS NOT NULL($1)])
-          JdbcProject(title=[$1], author=[$2])
-            JdbcHiveTableScan(table=[[default, book]], table:alias=[book])
-      JdbcProject(id=[$0], fname=[$1])
-        JdbcFilter(condition=[IS NOT NULL($0)])
+HiveProject(book.title=[$0], author.fname=[$1])
+  HiveProject(title=[$0], fname=[$1])
+    HiveJdbcConverter(convention=[JDBC.POSTGRES])
+      JdbcProject(title=[$0], fname=[$3])
+        JdbcJoin(condition=[=($1, $2)], joinType=[inner])
+          JdbcProject(title=[$0], author=[$1])
+            JdbcFilter(condition=[IS NOT NULL($1)])
+              JdbcProject(title=[$1], author=[$2])
+                JdbcHiveTableScan(table=[[default, book]], table:alias=[book])
           JdbcProject(id=[$0], fname=[$1])
-            JdbcHiveTableScan(table=[[default, author]], table:alias=[author])
+            JdbcFilter(condition=[IS NOT NULL($0)])
+              JdbcProject(id=[$0], fname=[$1])
+                JdbcHiveTableScan(table=[[default, author]], table:alias=[author])
 
 PREHOOK: query: explain select book.title, author.fname from book join author on book.author = author.id
 PREHOOK: type: QUERY
@@ -274,7 +278,7 @@ POSTHOOK: Input: default@author
 POSTHOOK: Input: default@book
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(title=[$0], fname=[$3])
+HiveProject(book.title=[$0], author.fname=[$3])
   HiveJoin(condition=[=($1, $2)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(title=[$0], author=[$1])
       HiveFilter(condition=[=(CAST(ucase($0)):VARCHAR(2147483647) CHARACTER SET "UTF-16LE", _UTF-16LE'LES MISERABLES')])
@@ -436,17 +440,19 @@ POSTHOOK: Input: default@author
 POSTHOOK: Input: default@book
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJdbcConverter(convention=[JDBC.POSTGRES])
-  JdbcAggregate(group=[{3}], agg#0=[count($0)])
-    JdbcJoin(condition=[=($1, $2)], joinType=[inner])
-      JdbcProject(title=[$0], author=[$1])
-        JdbcFilter(condition=[IS NOT NULL($1)])
-          JdbcProject(title=[$1], author=[$2])
-            JdbcHiveTableScan(table=[[default, book]], table:alias=[book])
-      JdbcProject(id=[$0], fname=[$1])
-        JdbcFilter(condition=[IS NOT NULL($0)])
+HiveProject(author.fname=[$0], books=[$1])
+  HiveProject(fname=[$0], $f1=[$1])
+    HiveJdbcConverter(convention=[JDBC.POSTGRES])
+      JdbcAggregate(group=[{3}], agg#0=[count($0)])
+        JdbcJoin(condition=[=($1, $2)], joinType=[inner])
+          JdbcProject(title=[$0], author=[$1])
+            JdbcFilter(condition=[IS NOT NULL($1)])
+              JdbcProject(title=[$1], author=[$2])
+                JdbcHiveTableScan(table=[[default, book]], table:alias=[book])
           JdbcProject(id=[$0], fname=[$1])
-            JdbcHiveTableScan(table=[[default, author]], table:alias=[author])
+            JdbcFilter(condition=[IS NOT NULL($0)])
+              JdbcProject(id=[$0], fname=[$1])
+                JdbcHiveTableScan(table=[[default, author]], table:alias=[author])
 
 PREHOOK: query: explain 
 select author.fname, count(book.title) as books
@@ -536,7 +542,7 @@ POSTHOOK: Input: default@author
 POSTHOOK: Input: default@book
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(_o__c0=[$0], books=[$1])
+HiveProject(_c0=[$0], books=[$1])
   HiveSortLimit(sort0=[$2], dir0=[ASC], fetch=[5])
     HiveProject(_o__c0=[ucase($0)], books=[$1], _o__col4=[ucase($0)])
       HiveProject(fname=[$0], $f1=[$1])
diff --git a/ql/src/test/results/clientpositive/llap/jdbc_split_filter.q.out b/ql/src/test/results/clientpositive/llap/jdbc_split_filter.q.out
index c55bbc3d89e..cf55088eaa9 100644
--- a/ql/src/test/results/clientpositive/llap/jdbc_split_filter.q.out
+++ b/ql/src/test/results/clientpositive/llap/jdbc_split_filter.q.out
@@ -141,15 +141,17 @@ POSTHOOK: Input: default@ext_simple_derby_table1
 POSTHOOK: Input: default@ext_simple_derby_table2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJdbcConverter(convention=[JDBC.DERBY])
-  JdbcProject(fkey=[$0], dkey=[$2], _o__c2=[$3])
-    JdbcAggregate(group=[{0, 4, 5}], agg#0=[sum($1)])
-      JdbcFilter(condition=[IS NULL($2)])
-        JdbcJoin(condition=[AND(=($1, $3), =($0, $2))], joinType=[left])
-          HiveProject(fkey=[$2], ikey=[$0])
-            JdbcHiveTableScan(table=[[default, ext_simple_derby_table1]], table:alias=[ext_simple_derby_table1])
-          JdbcProject(fkey=[$1], ikey=[$0], datekey=[$3], dkey=[$2])
-            JdbcFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
-              JdbcProject(ikey=[$0], fkey=[$2], dkey=[$3], datekey=[$4])
-                JdbcHiveTableScan(table=[[default, ext_simple_derby_table2]], table:alias=[ext_simple_derby_table2])
+HiveProject(t1.fkey=[$0], t2.dkey=[$1], _c2=[$2])
+  HiveProject(fkey=[$0], dkey=[$1], _o__c2=[$2])
+    HiveJdbcConverter(convention=[JDBC.DERBY])
+      JdbcProject(fkey=[$0], dkey=[$2], _o__c2=[$3])
+        JdbcAggregate(group=[{0, 4, 5}], agg#0=[sum($1)])
+          JdbcFilter(condition=[IS NULL($2)])
+            JdbcJoin(condition=[AND(=($1, $3), =($0, $2))], joinType=[left])
+              HiveProject(fkey=[$2], ikey=[$0])
+                JdbcHiveTableScan(table=[[default, ext_simple_derby_table1]], table:alias=[ext_simple_derby_table1])
+              JdbcProject(fkey=[$1], ikey=[$0], datekey=[$3], dkey=[$2])
+                JdbcFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1))])
+                  JdbcProject(ikey=[$0], fkey=[$2], dkey=[$3], datekey=[$4])
+                    JdbcHiveTableScan(table=[[default, ext_simple_derby_table2]], table:alias=[ext_simple_derby_table2])
 
diff --git a/ql/src/test/results/clientpositive/llap/jdbc_table_dml_postgres.q.out b/ql/src/test/results/clientpositive/llap/jdbc_table_dml_postgres.q.out
index 2e05ad23e66..ff176beec78 100644
--- a/ql/src/test/results/clientpositive/llap/jdbc_table_dml_postgres.q.out
+++ b/ql/src/test/results/clientpositive/llap/jdbc_table_dml_postgres.q.out
@@ -42,8 +42,9 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: _dummy_database@_dummy_table
 POSTHOOK: Output: default@country
 CBO PLAN:
-HiveTableFunctionScan(invocation=[inline(ARRAY(ROW(8, _UTF-16LE'Hungary':VARCHAR(2147483647) CHARACTER SET "UTF-16LE")))], rowType=[RecordType(INTEGER col1, VARCHAR(2147483647) col2)])
-  HiveTableScan(table=[[_dummy_database, _dummy_table]], table:alias=[_dummy_table])
+HiveProject(col1=[$0], col2=[$1])
+  HiveTableFunctionScan(invocation=[inline(ARRAY(ROW(8, _UTF-16LE'Hungary':VARCHAR(2147483647) CHARACTER SET "UTF-16LE")))], rowType=[RecordType(INTEGER col1, VARCHAR(2147483647) col2)])
+    HiveTableScan(table=[[_dummy_database, _dummy_table]], table:alias=[_dummy_table])
 
 PREHOOK: query: EXPLAIN INSERT INTO country VALUES (8, 'Hungary')
 PREHOOK: type: QUERY
diff --git a/ql/src/test/results/clientpositive/llap/jdbc_table_limit_postgres.q.out b/ql/src/test/results/clientpositive/llap/jdbc_table_limit_postgres.q.out
index 91eda938ada..42b45ebb29e 100644
--- a/ql/src/test/results/clientpositive/llap/jdbc_table_limit_postgres.q.out
+++ b/ql/src/test/results/clientpositive/llap/jdbc_table_limit_postgres.q.out
@@ -31,9 +31,11 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@country
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJdbcConverter(convention=[JDBC.POSTGRES])
-  JdbcSort(sort0=[$0], dir0=[ASC], fetch=[2])
-    JdbcHiveTableScan(table=[[default, country]], table:alias=[country])
+HiveProject(country.id=[$0], country.name=[$1])
+  HiveProject(id=[$0], name=[$1])
+    HiveJdbcConverter(convention=[JDBC.POSTGRES])
+      JdbcSort(sort0=[$0], dir0=[ASC], fetch=[2])
+        JdbcHiveTableScan(table=[[default, country]], table:alias=[country])
 
 PREHOOK: query: EXPLAIN SELECT * FROM country ORDER BY id LIMIT 2
 PREHOOK: type: QUERY
diff --git a/ql/src/test/results/clientpositive/llap/jdbc_table_with_schema_mariadb.q.out b/ql/src/test/results/clientpositive/llap/jdbc_table_with_schema_mariadb.q.out
index 510accb8513..771a811073d 100644
--- a/ql/src/test/results/clientpositive/llap/jdbc_table_with_schema_mariadb.q.out
+++ b/ql/src/test/results/clientpositive/llap/jdbc_table_with_schema_mariadb.q.out
@@ -31,9 +31,11 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@country_0
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJdbcConverter(convention=[JDBC.MYSQL])
-  JdbcAggregate(group=[{}], agg#0=[count()])
-    JdbcHiveTableScan(table=[[default, country_0]], table:alias=[country_0])
+HiveProject(_c0=[$0])
+  HiveProject($f0=[$0])
+    HiveJdbcConverter(convention=[JDBC.MYSQL])
+      JdbcAggregate(group=[{}], agg#0=[count()])
+        JdbcHiveTableScan(table=[[default, country_0]], table:alias=[country_0])
 
 PREHOOK: query: SELECT COUNT(*) FROM country_0
 PREHOOK: type: QUERY
@@ -79,9 +81,11 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@country_1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJdbcConverter(convention=[JDBC.MYSQL])
-  JdbcAggregate(group=[{}], agg#0=[count()])
-    JdbcHiveTableScan(table=[[default, country_1]], table:alias=[country_1])
+HiveProject(_c0=[$0])
+  HiveProject($f0=[$0])
+    HiveJdbcConverter(convention=[JDBC.MYSQL])
+      JdbcAggregate(group=[{}], agg#0=[count()])
+        JdbcHiveTableScan(table=[[default, country_1]], table:alias=[country_1])
 
 PREHOOK: query: SELECT COUNT(*) FROM country_1
 PREHOOK: type: QUERY
@@ -125,9 +129,11 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@country_2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJdbcConverter(convention=[JDBC.MYSQL])
-  JdbcAggregate(group=[{}], agg#0=[count()])
-    JdbcHiveTableScan(table=[[default, country_2]], table:alias=[country_2])
+HiveProject(_c0=[$0])
+  HiveProject($f0=[$0])
+    HiveJdbcConverter(convention=[JDBC.MYSQL])
+      JdbcAggregate(group=[{}], agg#0=[count()])
+        JdbcHiveTableScan(table=[[default, country_2]], table:alias=[country_2])
 
 PREHOOK: query: SELECT COUNT(*) FROM country_2
 PREHOOK: type: QUERY
@@ -173,9 +179,11 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@country_3
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJdbcConverter(convention=[JDBC.MYSQL])
-  JdbcAggregate(group=[{}], agg#0=[count()])
-    JdbcHiveTableScan(table=[[default, country_3]], table:alias=[country_3])
+HiveProject(_c0=[$0])
+  HiveProject($f0=[$0])
+    HiveJdbcConverter(convention=[JDBC.MYSQL])
+      JdbcAggregate(group=[{}], agg#0=[count()])
+        JdbcHiveTableScan(table=[[default, country_3]], table:alias=[country_3])
 
 PREHOOK: query: SELECT COUNT(*) FROM country_3
 PREHOOK: type: QUERY
diff --git a/ql/src/test/results/clientpositive/llap/jdbc_table_with_schema_mssql.q.out b/ql/src/test/results/clientpositive/llap/jdbc_table_with_schema_mssql.q.out
index 0690e03d708..50a1b2b5232 100644
--- a/ql/src/test/results/clientpositive/llap/jdbc_table_with_schema_mssql.q.out
+++ b/ql/src/test/results/clientpositive/llap/jdbc_table_with_schema_mssql.q.out
@@ -33,9 +33,11 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@country_0
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJdbcConverter(convention=[JDBC.MSSQL])
-  JdbcAggregate(group=[{}], agg#0=[count()])
-    JdbcHiveTableScan(table=[[default, country_0]], table:alias=[country_0])
+HiveProject(_c0=[$0])
+  HiveProject($f0=[$0])
+    HiveJdbcConverter(convention=[JDBC.MSSQL])
+      JdbcAggregate(group=[{}], agg#0=[count()])
+        JdbcHiveTableScan(table=[[default, country_0]], table:alias=[country_0])
 
 PREHOOK: query: SELECT COUNT(*) FROM country_0
 PREHOOK: type: QUERY
@@ -81,9 +83,11 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@country_1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJdbcConverter(convention=[JDBC.MSSQL])
-  JdbcAggregate(group=[{}], agg#0=[count()])
-    JdbcHiveTableScan(table=[[default, country_1]], table:alias=[country_1])
+HiveProject(_c0=[$0])
+  HiveProject($f0=[$0])
+    HiveJdbcConverter(convention=[JDBC.MSSQL])
+      JdbcAggregate(group=[{}], agg#0=[count()])
+        JdbcHiveTableScan(table=[[default, country_1]], table:alias=[country_1])
 
 PREHOOK: query: SELECT COUNT(*) FROM country_1
 PREHOOK: type: QUERY
@@ -148,9 +152,11 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@country_2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJdbcConverter(convention=[JDBC.MSSQL])
-  JdbcAggregate(group=[{}], agg#0=[count()])
-    JdbcHiveTableScan(table=[[default, country_2]], table:alias=[country_2])
+HiveProject(_c0=[$0])
+  HiveProject($f0=[$0])
+    HiveJdbcConverter(convention=[JDBC.MSSQL])
+      JdbcAggregate(group=[{}], agg#0=[count()])
+        JdbcHiveTableScan(table=[[default, country_2]], table:alias=[country_2])
 
 PREHOOK: query: SELECT COUNT(*) FROM country_2
 PREHOOK: type: QUERY
diff --git a/ql/src/test/results/clientpositive/llap/jdbc_table_with_schema_oracle.q.out b/ql/src/test/results/clientpositive/llap/jdbc_table_with_schema_oracle.q.out
index fef7583331a..468fe7c717e 100644
--- a/ql/src/test/results/clientpositive/llap/jdbc_table_with_schema_oracle.q.out
+++ b/ql/src/test/results/clientpositive/llap/jdbc_table_with_schema_oracle.q.out
@@ -35,9 +35,11 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@country_0
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJdbcConverter(convention=[JDBC.ORACLE])
-  JdbcAggregate(group=[{}], agg#0=[count()])
-    JdbcHiveTableScan(table=[[default, country_0]], table:alias=[country_0])
+HiveProject(_c0=[$0])
+  HiveProject($f0=[$0])
+    HiveJdbcConverter(convention=[JDBC.ORACLE])
+      JdbcAggregate(group=[{}], agg#0=[count()])
+        JdbcHiveTableScan(table=[[default, country_0]], table:alias=[country_0])
 
 PREHOOK: query: SELECT COUNT(*) FROM country_0
 PREHOOK: type: QUERY
@@ -83,9 +85,11 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@country_1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJdbcConverter(convention=[JDBC.ORACLE])
-  JdbcAggregate(group=[{}], agg#0=[count()])
-    JdbcHiveTableScan(table=[[default, country_1]], table:alias=[country_1])
+HiveProject(_c0=[$0])
+  HiveProject($f0=[$0])
+    HiveJdbcConverter(convention=[JDBC.ORACLE])
+      JdbcAggregate(group=[{}], agg#0=[count()])
+        JdbcHiveTableScan(table=[[default, country_1]], table:alias=[country_1])
 
 PREHOOK: query: SELECT COUNT(*) FROM country_1
 PREHOOK: type: QUERY
@@ -133,9 +137,11 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@country_2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJdbcConverter(convention=[JDBC.ORACLE])
-  JdbcAggregate(group=[{}], agg#0=[count()])
-    JdbcHiveTableScan(table=[[default, country_2]], table:alias=[country_2])
+HiveProject(_c0=[$0])
+  HiveProject($f0=[$0])
+    HiveJdbcConverter(convention=[JDBC.ORACLE])
+      JdbcAggregate(group=[{}], agg#0=[count()])
+        JdbcHiveTableScan(table=[[default, country_2]], table:alias=[country_2])
 
 PREHOOK: query: SELECT COUNT(*) FROM country_2
 PREHOOK: type: QUERY
diff --git a/ql/src/test/results/clientpositive/llap/jdbc_table_with_schema_postgres.q.out b/ql/src/test/results/clientpositive/llap/jdbc_table_with_schema_postgres.q.out
index 22c60edc037..3b146786219 100644
--- a/ql/src/test/results/clientpositive/llap/jdbc_table_with_schema_postgres.q.out
+++ b/ql/src/test/results/clientpositive/llap/jdbc_table_with_schema_postgres.q.out
@@ -33,9 +33,11 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@country_0
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJdbcConverter(convention=[JDBC.POSTGRES])
-  JdbcAggregate(group=[{}], agg#0=[count()])
-    JdbcHiveTableScan(table=[[default, country_0]], table:alias=[country_0])
+HiveProject(_c0=[$0])
+  HiveProject($f0=[$0])
+    HiveJdbcConverter(convention=[JDBC.POSTGRES])
+      JdbcAggregate(group=[{}], agg#0=[count()])
+        JdbcHiveTableScan(table=[[default, country_0]], table:alias=[country_0])
 
 PREHOOK: query: SELECT COUNT(*) FROM country_0
 PREHOOK: type: QUERY
@@ -81,9 +83,11 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@country_1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJdbcConverter(convention=[JDBC.POSTGRES])
-  JdbcAggregate(group=[{}], agg#0=[count()])
-    JdbcHiveTableScan(table=[[default, country_1]], table:alias=[country_1])
+HiveProject(_c0=[$0])
+  HiveProject($f0=[$0])
+    HiveJdbcConverter(convention=[JDBC.POSTGRES])
+      JdbcAggregate(group=[{}], agg#0=[count()])
+        JdbcHiveTableScan(table=[[default, country_1]], table:alias=[country_1])
 
 PREHOOK: query: SELECT COUNT(*) FROM country_1
 PREHOOK: type: QUERY
@@ -148,9 +152,11 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@country_2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJdbcConverter(convention=[JDBC.POSTGRES])
-  JdbcAggregate(group=[{}], agg#0=[count()])
-    JdbcHiveTableScan(table=[[default, country_2]], table:alias=[country_2])
+HiveProject(_c0=[$0])
+  HiveProject($f0=[$0])
+    HiveJdbcConverter(convention=[JDBC.POSTGRES])
+      JdbcAggregate(group=[{}], agg#0=[count()])
+        JdbcHiveTableScan(table=[[default, country_2]], table:alias=[country_2])
 
 PREHOOK: query: SELECT COUNT(*) FROM country_2
 PREHOOK: type: QUERY
diff --git a/ql/src/test/results/clientpositive/llap/join17.q.out b/ql/src/test/results/clientpositive/llap/join17.q.out
index c16c9c6680d..7a768a328c2 100644
--- a/ql/src/test/results/clientpositive/llap/join17.q.out
+++ b/ql/src/test/results/clientpositive/llap/join17.q.out
@@ -18,7 +18,7 @@ INSERT OVERWRITE TABLE dest1_n121 SELECT src1.*, src2.*
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 POSTHOOK: Output: default@dest1_n121
-OPTIMIZED SQL: SELECT *
+OPTIMIZED SQL: SELECT `t0`.`key` AS `src1.key`, `t0`.`value` AS `src1.value`, `t2`.`key` AS `src2.key`, `t2`.`value` AS `src2.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`src`
 WHERE `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/join26.q.out b/ql/src/test/results/clientpositive/llap/join26.q.out
index 19cb55a5e27..e0662ab5bd0 100644
--- a/ql/src/test/results/clientpositive/llap/join26.q.out
+++ b/ql/src/test/results/clientpositive/llap/join26.q.out
@@ -28,7 +28,7 @@ POSTHOOK: Input: default@src1
 POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Output: default@dest_j1_n10
-OPTIMIZED SQL: SELECT `t4`.`key`, `t0`.`value`, `t2`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t4`.`key` AS `x.key`, `t0`.`value` AS `z.value`, `t2`.`value` AS `y.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`srcpart`
 WHERE `ds` = '2008-04-08' AND `hr` = 11 AND `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/join32.q.out b/ql/src/test/results/clientpositive/llap/join32.q.out
index 9a19fdd28f3..efee714a3bc 100644
--- a/ql/src/test/results/clientpositive/llap/join32.q.out
+++ b/ql/src/test/results/clientpositive/llap/join32.q.out
@@ -28,7 +28,7 @@ POSTHOOK: Input: default@src1
 POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Output: default@dest_j1_n12
-OPTIMIZED SQL: SELECT `t4`.`key`, `t0`.`value`, `t2`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t4`.`key` AS `x.key`, `t0`.`value` AS `z.value`, `t2`.`value` AS `y.value`
 FROM (SELECT `value`
 FROM `default`.`srcpart`
 WHERE `ds` = '2008-04-08' AND `hr` = 11 AND `value` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/join32_lessSize.q.out b/ql/src/test/results/clientpositive/llap/join32_lessSize.q.out
index cd28555ea90..15ec6ca9af0 100644
--- a/ql/src/test/results/clientpositive/llap/join32_lessSize.q.out
+++ b/ql/src/test/results/clientpositive/llap/join32_lessSize.q.out
@@ -36,7 +36,7 @@ POSTHOOK: Input: default@src1
 POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Output: default@dest_j1_n21
-OPTIMIZED SQL: SELECT `t4`.`key`, `t0`.`value`, `t2`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t4`.`key` AS `x.key`, `t0`.`value` AS `z.value`, `t2`.`value` AS `y.value`
 FROM (SELECT `value`
 FROM `default`.`srcpart`
 WHERE `ds` = '2008-04-08' AND `hr` = 11 AND `value` IS NOT NULL) AS `t0`
@@ -533,7 +533,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 POSTHOOK: Input: default@src1
 POSTHOOK: Output: default@dest_j1_n21
-OPTIMIZED SQL: SELECT `t4`.`key`, `t6`.`value`, `t2`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t4`.`key` AS `x.key`, `t6`.`value` AS `z.value`, `t2`.`value` AS `y.value`
 FROM (SELECT `value`
 FROM `default`.`src`
 WHERE `value` IS NOT NULL) AS `t0`
@@ -1106,7 +1106,7 @@ POSTHOOK: Input: default@src1
 POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Output: default@dest_j2_n1
-OPTIMIZED SQL: SELECT `t4`.`key`, `t0`.`value`, `t4`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t4`.`key` AS `res.key`, `t0`.`value` AS `z.value`, `t4`.`value` AS `res.value`
 FROM (SELECT `value`
 FROM `default`.`srcpart`
 WHERE `ds` = '2008-04-08' AND `hr` = 11 AND `value` IS NOT NULL) AS `t0`
@@ -1605,7 +1605,7 @@ POSTHOOK: Input: default@src1
 POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Output: default@dest_j2_n1
-OPTIMIZED SQL: SELECT `t2`.`key`, `t0`.`value`, `t2`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t2`.`key` AS `res.key`, `t0`.`value` AS `z.value`, `t2`.`value` AS `res.value`
 FROM (SELECT `value`
 FROM `default`.`srcpart`
 WHERE `ds` = '2008-04-08' AND `hr` = 11 AND `value` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/join33.q.out b/ql/src/test/results/clientpositive/llap/join33.q.out
index 381c5d3c136..d1bb9c66a78 100644
--- a/ql/src/test/results/clientpositive/llap/join33.q.out
+++ b/ql/src/test/results/clientpositive/llap/join33.q.out
@@ -28,7 +28,7 @@ POSTHOOK: Input: default@src1
 POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Output: default@dest_j1_n7
-OPTIMIZED SQL: SELECT `t4`.`key`, `t0`.`value`, `t2`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t4`.`key` AS `x.key`, `t0`.`value` AS `z.value`, `t2`.`value` AS `y.value`
 FROM (SELECT `value`
 FROM `default`.`srcpart`
 WHERE `ds` = '2008-04-08' AND `hr` = 11 AND `value` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/join34.q.out b/ql/src/test/results/clientpositive/llap/join34.q.out
index ae020937422..ef54be0b29e 100644
--- a/ql/src/test/results/clientpositive/llap/join34.q.out
+++ b/ql/src/test/results/clientpositive/llap/join34.q.out
@@ -32,7 +32,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 POSTHOOK: Input: default@src1
 POSTHOOK: Output: default@dest_j1_n1
-OPTIMIZED SQL: SELECT `t6`.`key`, `t6`.`value`, `t4`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t6`.`key` AS `x.key`, `t6`.`value` AS `x.value`, `t4`.`value` AS `subq1.value`
 FROM (SELECT *
 FROM (SELECT `key`, `value`
 FROM `default`.`src`
diff --git a/ql/src/test/results/clientpositive/llap/join35.q.out b/ql/src/test/results/clientpositive/llap/join35.q.out
index c4d8cc4123e..39c088690d6 100644
--- a/ql/src/test/results/clientpositive/llap/join35.q.out
+++ b/ql/src/test/results/clientpositive/llap/join35.q.out
@@ -32,7 +32,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 POSTHOOK: Input: default@src1
 POSTHOOK: Output: default@dest_j1_n24
-OPTIMIZED SQL: SELECT `t8`.`key`, `t8`.`value`, `t6`.`$f1` AS `cnt`
+OPTIMIZED SQL: SELECT `t8`.`key` AS `x.key`, `t8`.`value` AS `x.value`, `t6`.`$f1` AS `subq1.cnt`
 FROM (SELECT *
 FROM (SELECT `key`, COUNT(*) AS `$f1`
 FROM `default`.`src`
diff --git a/ql/src/test/results/clientpositive/llap/join46.q.out b/ql/src/test/results/clientpositive/llap/join46.q.out
index 2cb5748774d..c411ea87504 100644
--- a/ql/src/test/results/clientpositive/llap/join46.q.out
+++ b/ql/src/test/results/clientpositive/llap/join46.q.out
@@ -2517,7 +2517,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@table1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(r=[$0])
+HiveProject(sub1.r=[$0])
   HiveJoin(condition=[=($0, $1)], joinType=[left], algorithm=[none], cost=[not available])
     HiveProject(r=[RANK() OVER (PARTITION BY 0 ORDER BY $1 DESC NULLS FIRST RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)])
       HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
diff --git a/ql/src/test/results/clientpositive/llap/join9.q.out b/ql/src/test/results/clientpositive/llap/join9.q.out
index 98ba44f74e4..a23d6829eb4 100644
--- a/ql/src/test/results/clientpositive/llap/join9.q.out
+++ b/ql/src/test/results/clientpositive/llap/join9.q.out
@@ -22,7 +22,7 @@ POSTHOOK: Input: default@src
 POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 POSTHOOK: Output: default@dest1_n39
-OPTIMIZED SQL: SELECT `t0`.`key`, `t2`.`value`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `src1.key`, `t2`.`value` AS `src2.value`
 FROM (SELECT `key`
 FROM `default`.`srcpart`
 WHERE `ds` = '2008-04-08' AND `hr` = '12' AND `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/join_filters_overlap.q.out b/ql/src/test/results/clientpositive/llap/join_filters_overlap.q.out
index a4c9b287d65..8d18335794c 100644
--- a/ql/src/test/results/clientpositive/llap/join_filters_overlap.q.out
+++ b/ql/src/test/results/clientpositive/llap/join_filters_overlap.q.out
@@ -18,7 +18,7 @@ POSTHOOK: query: explain extended select * from a_n4 left outer join a_n4 b on (
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@a_n4
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t`.`key`, `t`.`value`, `t1`.`key` AS `key1`, `t1`.`value` AS `value1`, `t3`.`key` AS `key2`, `t3`.`value` AS `value2`
+OPTIMIZED SQL: SELECT `t`.`key` AS `a_n4.key`, `t`.`value` AS `a_n4.value`, `t1`.`key` AS `b.key`, `t1`.`value` AS `b.value`, `t3`.`key` AS `c.key`, `t3`.`value` AS `c.value`
 FROM (SELECT `key`, `value`, `value` = 60 AS `EXPR$0`, `value` = 50 AS `EXPR$1`
 FROM `default`.`a_n4`) AS `t`
 LEFT JOIN (SELECT `key`, CAST(50 AS INT) AS `value`
@@ -296,7 +296,7 @@ POSTHOOK: query: explain extended select * from a_n4 right outer join a_n4 b on
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@a_n4
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, `t1`.`key` AS `key1`, `t1`.`value` AS `value1`, `t3`.`key` AS `key2`, `t3`.`value` AS `value2`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a_n4.key`, `t0`.`value` AS `a_n4.value`, `t1`.`key` AS `b.key`, `t1`.`value` AS `b.value`, `t3`.`key` AS `c.key`, `t3`.`value` AS `c.value`
 FROM (SELECT `key`, CAST(50 AS INT) AS `value`
 FROM `default`.`a_n4`
 WHERE `value` = 50 AND `key` IS NOT NULL) AS `t0`
@@ -574,7 +574,7 @@ POSTHOOK: query: explain extended select * from a_n4 right outer join a_n4 b on
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@a_n4
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, `t1`.`key` AS `key1`, `t1`.`value` AS `value1`, `t3`.`key` AS `key2`, `t3`.`value` AS `value2`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a_n4.key`, `t0`.`value` AS `a_n4.value`, `t1`.`key` AS `b.key`, `t1`.`value` AS `b.value`, `t3`.`key` AS `c.key`, `t3`.`value` AS `c.value`
 FROM (SELECT `key`, CAST(50 AS INT) AS `value`
 FROM `default`.`a_n4`
 WHERE `value` = 50 AND `key` IS NOT NULL) AS `t0`
@@ -852,7 +852,7 @@ POSTHOOK: query: explain extended select * from a_n4 full outer join a_n4 b on (
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@a_n4
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t`.`key`, `t`.`value`, `t0`.`key` AS `key1`, `t0`.`value` AS `value1`, `t2`.`key` AS `key2`, `t2`.`value` AS `value2`, `t4`.`key` AS `key3`, `t4`.`value` AS `value3`
+OPTIMIZED SQL: SELECT `t`.`key` AS `a_n4.key`, `t`.`value` AS `a_n4.value`, `t0`.`key` AS `b.key`, `t0`.`value` AS `b.value`, `t2`.`key` AS `c.key`, `t2`.`value` AS `c.value`, `t4`.`key` AS `d.key`, `t4`.`value` AS `d.value`
 FROM (SELECT `key`, `value`, `value` = 40 AS `EXPR$0`, `value` = 50 AS `EXPR$1`
 FROM `default`.`a_n4`) AS `t`
 FULL JOIN (SELECT `key`, `value`, `value` = 60 AS `EXPR$1`, `value` = 50 AS `EXPR$13`
@@ -1168,7 +1168,7 @@ POSTHOOK: query: explain extended select * from a_n4 left outer join a_n4 b on (
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@a_n4
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t`.`key`, `t`.`value`, `t1`.`key` AS `key1`, `t1`.`value` AS `value1`, `t3`.`key` AS `key2`, `t3`.`value` AS `value2`, `t5`.`key` AS `key3`, `t5`.`value` AS `value3`
+OPTIMIZED SQL: SELECT `t`.`key` AS `a_n4.key`, `t`.`value` AS `a_n4.value`, `t1`.`key` AS `b.key`, `t1`.`value` AS `b.value`, `t3`.`key` AS `c.key`, `t3`.`value` AS `c.value`, `t5`.`key` AS `d.key`, `t5`.`value` AS `d.value`
 FROM (SELECT `key`, `value`, `value` = 40 AS `EXPR$0`, `value` = 60 AS `EXPR$1`, `value` = 50 AS `EXPR$2`
 FROM `default`.`a_n4`) AS `t`
 LEFT JOIN (SELECT `key`, CAST(50 AS INT) AS `value`
diff --git a/ql/src/test/results/clientpositive/llap/join_is_not_distinct_from.q.out b/ql/src/test/results/clientpositive/llap/join_is_not_distinct_from.q.out
index 306b9b1f364..4ad63ff0a21 100644
--- a/ql/src/test/results/clientpositive/llap/join_is_not_distinct_from.q.out
+++ b/ql/src/test/results/clientpositive/llap/join_is_not_distinct_from.q.out
@@ -23,11 +23,12 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@myinput1_n10
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJoin(condition=[IS NOT DISTINCT FROM($0, $3)], joinType=[inner], algorithm=[none], cost=[not available])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, myinput1_n10]], table:alias=[a])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, myinput1_n10]], table:alias=[b])
+HiveProject(a.key=[$0], a.value=[$1], b.key=[$2], b.value=[$3])
+  HiveJoin(condition=[IS NOT DISTINCT FROM($0, $3)], joinType=[inner], algorithm=[none], cost=[not available])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, myinput1_n10]], table:alias=[a])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, myinput1_n10]], table:alias=[b])
 
 PREHOOK: query: explain select * from myinput1_n10 a join myinput1_n10 b on a.key is not distinct from b.value
 PREHOOK: type: QUERY
@@ -139,7 +140,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@myinput1_n10
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[$0], value=[$1], key0=[$4], value0=[$5], key1=[$2], value1=[$3])
+HiveProject(a.key=[$0], a.value=[$1], b.key=[$4], b.value=[$5], c.key=[$2], c.value=[$3])
   HiveJoin(condition=[IS NOT DISTINCT FROM($0, $5)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject(key=[$0], value=[$1])
@@ -293,7 +294,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@myinput1_n10
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[$0], value=[$1], key0=[$4], value0=[$5], key1=[$2], value1=[$3])
+HiveProject(a.key=[$0], a.value=[$1], b.key=[$4], b.value=[$5], c.key=[$2], c.value=[$3])
   HiveJoin(condition=[IS NOT DISTINCT FROM($0, $5)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveJoin(condition=[IS NOT DISTINCT FROM($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject(key=[$0], value=[$1])
@@ -462,17 +463,18 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@myinput1_n10
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJoin(condition=[AND(IS NOT DISTINCT FROM($0, $4), =($1, $5))], joinType=[inner], algorithm=[none], cost=[not available])
-  HiveJoin(condition=[AND(IS NOT DISTINCT FROM($0, $3), =($1, $2))], joinType=[inner], algorithm=[none], cost=[not available])
+HiveProject(a.key=[$0], a.value=[$1], b.key=[$2], b.value=[$3], c.key=[$4], c.value=[$5])
+  HiveJoin(condition=[AND(=($1, $5), IS NOT DISTINCT FROM($0, $4))], joinType=[inner], algorithm=[none], cost=[not available])
+    HiveJoin(condition=[AND(=($1, $2), IS NOT DISTINCT FROM($0, $3))], joinType=[inner], algorithm=[none], cost=[not available])
+      HiveProject(key=[$0], value=[$1])
+        HiveFilter(condition=[IS NOT NULL($1)])
+          HiveTableScan(table=[[default, myinput1_n10]], table:alias=[a])
+      HiveProject(key=[$0], value=[$1])
+        HiveFilter(condition=[IS NOT NULL($0)])
+          HiveTableScan(table=[[default, myinput1_n10]], table:alias=[b])
     HiveProject(key=[$0], value=[$1])
       HiveFilter(condition=[IS NOT NULL($1)])
-        HiveTableScan(table=[[default, myinput1_n10]], table:alias=[a])
-    HiveProject(key=[$0], value=[$1])
-      HiveFilter(condition=[IS NOT NULL($0)])
-        HiveTableScan(table=[[default, myinput1_n10]], table:alias=[b])
-  HiveProject(key=[$0], value=[$1])
-    HiveFilter(condition=[IS NOT NULL($1)])
-      HiveTableScan(table=[[default, myinput1_n10]], table:alias=[c])
+        HiveTableScan(table=[[default, myinput1_n10]], table:alias=[c])
 
 PREHOOK: query: explain select * from myinput1_n10 a join myinput1_n10 b on a.key is not distinct from b.value AND a.value=b.key join myinput1_n10 c on a.key is not distinct from c.key AND a.value=c.value
 PREHOOK: type: QUERY
@@ -607,7 +609,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@myinput1_n10
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[$0], value=[$1], key0=[$4], value0=[$5], key1=[$2], value1=[$3])
+HiveProject(a.key=[$0], a.value=[$1], b.key=[$4], b.value=[$5], c.key=[$2], c.value=[$3])
   HiveJoin(condition=[AND(IS NOT DISTINCT FROM($0, $5), IS NOT DISTINCT FROM($1, $4))], joinType=[inner], algorithm=[none], cost=[not available])
     HiveJoin(condition=[AND(IS NOT DISTINCT FROM($0, $2), IS NOT DISTINCT FROM($1, $3))], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject(key=[$0], value=[$1])
@@ -1792,7 +1794,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@myinput1_n10
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[null:INTEGER], value=[$0], key1=[$1], value1=[null:INTEGER])
+HiveProject(a.key=[null:INTEGER], a.value=[$0], b.key=[$1], b.value=[null:INTEGER])
   HiveJoin(condition=[true], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(value=[$1])
       HiveFilter(condition=[IS NULL($0)])
diff --git a/ql/src/test/results/clientpositive/llap/join_nullsafe.q.out b/ql/src/test/results/clientpositive/llap/join_nullsafe.q.out
index 0d7dc4a7b61..9cba8c520d5 100644
--- a/ql/src/test/results/clientpositive/llap/join_nullsafe.q.out
+++ b/ql/src/test/results/clientpositive/llap/join_nullsafe.q.out
@@ -23,11 +23,12 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@myinput1_n9
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJoin(condition=[IS NOT DISTINCT FROM($0, $3)], joinType=[inner], algorithm=[none], cost=[not available])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, myinput1_n9]], table:alias=[a])
-  HiveProject(key=[$0], value=[$1])
-    HiveTableScan(table=[[default, myinput1_n9]], table:alias=[b])
+HiveProject(a.key=[$0], a.value=[$1], b.key=[$2], b.value=[$3])
+  HiveJoin(condition=[IS NOT DISTINCT FROM($0, $3)], joinType=[inner], algorithm=[none], cost=[not available])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, myinput1_n9]], table:alias=[a])
+    HiveProject(key=[$0], value=[$1])
+      HiveTableScan(table=[[default, myinput1_n9]], table:alias=[b])
 
 PREHOOK: query: explain select * from myinput1_n9 a join myinput1_n9 b on a.key<=>b.value
 PREHOOK: type: QUERY
@@ -139,7 +140,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@myinput1_n9
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[$0], value=[$1], key0=[$4], value0=[$5], key1=[$2], value1=[$3])
+HiveProject(a.key=[$0], a.value=[$1], b.key=[$4], b.value=[$5], c.key=[$2], c.value=[$3])
   HiveJoin(condition=[IS NOT DISTINCT FROM($0, $5)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject(key=[$0], value=[$1])
@@ -293,7 +294,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@myinput1_n9
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[$0], value=[$1], key0=[$4], value0=[$5], key1=[$2], value1=[$3])
+HiveProject(a.key=[$0], a.value=[$1], b.key=[$4], b.value=[$5], c.key=[$2], c.value=[$3])
   HiveJoin(condition=[IS NOT DISTINCT FROM($0, $5)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveJoin(condition=[IS NOT DISTINCT FROM($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject(key=[$0], value=[$1])
@@ -462,17 +463,18 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@myinput1_n9
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJoin(condition=[AND(IS NOT DISTINCT FROM($0, $4), =($1, $5))], joinType=[inner], algorithm=[none], cost=[not available])
-  HiveJoin(condition=[AND(IS NOT DISTINCT FROM($0, $3), =($1, $2))], joinType=[inner], algorithm=[none], cost=[not available])
+HiveProject(a.key=[$0], a.value=[$1], b.key=[$2], b.value=[$3], c.key=[$4], c.value=[$5])
+  HiveJoin(condition=[AND(=($1, $5), IS NOT DISTINCT FROM($0, $4))], joinType=[inner], algorithm=[none], cost=[not available])
+    HiveJoin(condition=[AND(=($1, $2), IS NOT DISTINCT FROM($0, $3))], joinType=[inner], algorithm=[none], cost=[not available])
+      HiveProject(key=[$0], value=[$1])
+        HiveFilter(condition=[IS NOT NULL($1)])
+          HiveTableScan(table=[[default, myinput1_n9]], table:alias=[a])
+      HiveProject(key=[$0], value=[$1])
+        HiveFilter(condition=[IS NOT NULL($0)])
+          HiveTableScan(table=[[default, myinput1_n9]], table:alias=[b])
     HiveProject(key=[$0], value=[$1])
       HiveFilter(condition=[IS NOT NULL($1)])
-        HiveTableScan(table=[[default, myinput1_n9]], table:alias=[a])
-    HiveProject(key=[$0], value=[$1])
-      HiveFilter(condition=[IS NOT NULL($0)])
-        HiveTableScan(table=[[default, myinput1_n9]], table:alias=[b])
-  HiveProject(key=[$0], value=[$1])
-    HiveFilter(condition=[IS NOT NULL($1)])
-      HiveTableScan(table=[[default, myinput1_n9]], table:alias=[c])
+        HiveTableScan(table=[[default, myinput1_n9]], table:alias=[c])
 
 PREHOOK: query: explain select * from myinput1_n9 a join myinput1_n9 b on a.key<=>b.value AND a.value=b.key join myinput1_n9 c on a.key<=>c.key AND a.value=c.value
 PREHOOK: type: QUERY
@@ -607,7 +609,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@myinput1_n9
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[$0], value=[$1], key0=[$4], value0=[$5], key1=[$2], value1=[$3])
+HiveProject(a.key=[$0], a.value=[$1], b.key=[$4], b.value=[$5], c.key=[$2], c.value=[$3])
   HiveJoin(condition=[AND(IS NOT DISTINCT FROM($0, $5), IS NOT DISTINCT FROM($1, $4))], joinType=[inner], algorithm=[none], cost=[not available])
     HiveJoin(condition=[AND(IS NOT DISTINCT FROM($0, $2), IS NOT DISTINCT FROM($1, $3))], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject(key=[$0], value=[$1])
@@ -1792,7 +1794,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@myinput1_n9
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[null:INTEGER], value=[$0], key1=[$1], value1=[null:INTEGER])
+HiveProject(a.key=[null:INTEGER], a.value=[$0], b.key=[$1], b.value=[null:INTEGER])
   HiveJoin(condition=[true], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(value=[$1])
       HiveFilter(condition=[IS NULL($0)])
diff --git a/ql/src/test/results/clientpositive/llap/join_reorder5.q.out b/ql/src/test/results/clientpositive/llap/join_reorder5.q.out
index 75e474fd5db..5cc02876f26 100644
--- a/ql/src/test/results/clientpositive/llap/join_reorder5.q.out
+++ b/ql/src/test/results/clientpositive/llap/join_reorder5.q.out
@@ -61,20 +61,21 @@ POSTHOOK: Input: default@web_returns
 POSTHOOK: Input: default@web_sales
 #### A masked pattern was here ####
 CBO PLAN:
-HiveSemiJoin(condition=[=($0, $1)], joinType=[semi])
-  HiveProject(ws_order_number=[$0])
-    HiveFilter(condition=[IS NOT NULL($0)])
-      HiveTableScan(table=[[default, web_sales]], table:alias=[ws1])
-  HiveProject(wr_order_number=[$0])
-    HiveJoin(condition=[=($1, $2)], joinType=[inner], algorithm=[none], cost=[not available])
-      HiveJoin(condition=[=($0, $1)], joinType=[inner], algorithm=[none], cost=[not available])
+HiveProject(ws_order_number=[$0])
+  HiveSemiJoin(condition=[=($0, $1)], joinType=[semi])
+    HiveProject(ws_order_number=[$0])
+      HiveFilter(condition=[IS NOT NULL($0)])
+        HiveTableScan(table=[[default, web_sales]], table:alias=[ws1])
+    HiveProject(wr_order_number=[$0])
+      HiveJoin(condition=[=($1, $2)], joinType=[inner], algorithm=[none], cost=[not available])
+        HiveJoin(condition=[=($0, $1)], joinType=[inner], algorithm=[none], cost=[not available])
+          HiveProject(wr_order_number=[$0])
+            HiveFilter(condition=[IS NOT NULL($0)])
+              HiveTableScan(table=[[default, web_returns]], table:alias=[web_returns])
+          HiveProject(ws_order_number=[$0])
+            HiveFilter(condition=[IS NOT NULL($0)])
+              HiveTableScan(table=[[default, web_sales]], table:alias=[ws1])
         HiveProject(wr_order_number=[$0])
           HiveFilter(condition=[IS NOT NULL($0)])
-            HiveTableScan(table=[[default, web_returns]], table:alias=[web_returns])
-        HiveProject(ws_order_number=[$0])
-          HiveFilter(condition=[IS NOT NULL($0)])
-            HiveTableScan(table=[[default, web_sales]], table:alias=[ws1])
-      HiveProject(wr_order_number=[$0])
-        HiveFilter(condition=[IS NOT NULL($0)])
-          HiveTableScan(table=[[default, web_returns]], table:alias=[wr2])
+            HiveTableScan(table=[[default, web_returns]], table:alias=[wr2])
 
diff --git a/ql/src/test/results/clientpositive/llap/join_using_clause.q.out b/ql/src/test/results/clientpositive/llap/join_using_clause.q.out
index af1b04c38b9..71e9f2cb8e0 100644
--- a/ql/src/test/results/clientpositive/llap/join_using_clause.q.out
+++ b/ql/src/test/results/clientpositive/llap/join_using_clause.q.out
@@ -96,7 +96,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@test
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(a=[$1])
+HiveProject(t2.a=[$1])
   HiveJoin(condition=[=($1, $2)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveJoin(condition=[=($0, $1)], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject(a=[$0])
@@ -135,7 +135,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@test1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(b=[$1], a=[$2], a1=[$0], a2=[$3])
+HiveProject(t2.b=[$1], t1.a=[$2], t2.a=[$0], t3.a=[$3])
   HiveJoin(condition=[=($1, $4)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveJoin(condition=[=($2, $0)], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject(a=[$0], b=[$1])
@@ -182,7 +182,7 @@ POSTHOOK: Input: default@test1
 POSTHOOK: Input: default@test2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(b=[$1], a=[$0], a1=[$2], a2=[$3], c=[$5])
+HiveProject(t1.b=[$1], t1.a=[$0], t2.a=[$2], t3.a=[$3], t3.c=[$5])
   HiveJoin(condition=[=($1, $4)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject(a=[$0], b=[$1])
@@ -233,7 +233,7 @@ POSTHOOK: Input: default@test1
 POSTHOOK: Input: default@test2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(c=[$2], a=[$8], a1=[$6], b=[$7], a2=[$0], b1=[$1], a3=[$3], b2=[$4])
+HiveProject(t3.c=[$2], t1.a=[$8], t2.a=[$6], t2.b=[$7], t3.a=[$0], t3.b=[$1], t4.a=[$3], t4.b=[$4])
   HiveJoin(condition=[=($7, $1)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveJoin(condition=[=($2, $5)], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject(a=[$0], b=[$1], c=[$2])
@@ -289,9 +289,9 @@ POSTHOOK: Input: default@test1
 POSTHOOK: Input: default@test2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(a=[$5], b=[$4], b1=[$1], c=[$2], b2=[$6], c1=[$7])
-  HiveJoin(condition=[AND(=($2, $7), =($1, $6))], joinType=[inner], algorithm=[none], cost=[not available])
-    HiveJoin(condition=[AND(=($3, $0), =($4, $1))], joinType=[inner], algorithm=[none], cost=[not available])
+HiveProject(t3.a=[$5], t1.b=[$4], t2.b=[$1], t2.c=[$2], t3.b=[$6], t3.c=[$7])
+  HiveJoin(condition=[AND(=($1, $6), =($2, $7))], joinType=[inner], algorithm=[none], cost=[not available])
+    HiveJoin(condition=[AND(=($4, $1), =($3, $0))], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject(a=[$0], b=[$1], c=[$2])
         HiveFilter(condition=[AND(IS NOT NULL($0), IS NOT NULL($1), IS NOT NULL($2))])
           HiveTableScan(table=[[default, test2]], table:alias=[t2])
@@ -341,7 +341,7 @@ POSTHOOK: Input: default@test1
 POSTHOOK: Input: default@test2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(b=[$1], a=[$0], a1=[$2], a2=[$3], c=[$5])
+HiveProject(test1.b=[$1], test1.a=[$0], test.a=[$2], test2.a=[$3], test2.c=[$5])
   HiveJoin(condition=[=($1, $4)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject(a=[$0], b=[$1])
diff --git a/ql/src/test/results/clientpositive/llap/lateral_view_cbo.q.out b/ql/src/test/results/clientpositive/llap/lateral_view_cbo.q.out
index 4584ef06b90..762801321ef 100644
--- a/ql/src/test/results/clientpositive/llap/lateral_view_cbo.q.out
+++ b/ql/src/test/results/clientpositive/llap/lateral_view_cbo.q.out
@@ -17,7 +17,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@simple_table
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(mycol=[$6])
+HiveProject(mytable.mycol=[$6])
   HiveTableFunctionScan(invocation=[LATERAL(explode(ARRAY(1, 2, 3)), $0, $1, $2, $3, $4, $5)], rowType=[RecordType(VARCHAR(2147483647) col, VARCHAR(2147483647) ARRAY array_col, BIGINT BLOCK__OFFSET__INSIDE__FILE, VARCHAR(2147483647) INPUT__FILE__NAME, RecordType(BIGINT writeid, INTEGER bucketid, BIGINT rowid) ROW__ID, BOOLEAN ROW__IS__DELETED, INTEGER mytable.mycol)])
     HiveTableScan(table=[[default, simple_table]], table:alias=[simple_table])
 
@@ -34,7 +34,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@simple_table
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(mycol=[$6], mycol2=[$7])
+HiveProject(mytable.mycol=[$6], mytable2.mycol2=[$7])
   HiveTableFunctionScan(invocation=[LATERAL(explode(ARRAY(1, 2, 3)), $0, $1, $2, $3, $4, $5, $6)], rowType=[RecordType(VARCHAR(2147483647) col, VARCHAR(2147483647) ARRAY array_col, BIGINT BLOCK__OFFSET__INSIDE__FILE, VARCHAR(2147483647) INPUT__FILE__NAME, RecordType(BIGINT writeid, INTEGER bucketid, BIGINT rowid) ROW__ID, BOOLEAN ROW__IS__DELETED, INTEGER mytable.mycol, INTEGER mytable2.mycol2)])
     HiveProject(col=[$0], array_col=[$1], BLOCK__OFFSET__INSIDE__FILE=[$2], INPUT__FILE__NAME=[$3], ROW__ID=[$4], ROW__IS__DELETED=[$5], mytable.mycol=[$6])
       HiveTableFunctionScan(invocation=[LATERAL(explode(ARRAY(1, 2, 3)), $0, $1, $2, $3, $4, $5)], rowType=[RecordType(VARCHAR(2147483647) col, VARCHAR(2147483647) ARRAY array_col, BIGINT BLOCK__OFFSET__INSIDE__FILE, VARCHAR(2147483647) INPUT__FILE__NAME, RecordType(BIGINT writeid, INTEGER bucketid, BIGINT rowid) ROW__ID, BOOLEAN ROW__IS__DELETED, INTEGER mytable.mycol)])
@@ -53,7 +53,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@simple_table
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(col1=[$6], col2=[$7], col3=[$8])
+HiveProject(tf.col1=[$6], tf.col2=[$7], tf.col3=[$8])
   HiveTableFunctionScan(invocation=[inline(ARRAY(ROW($0, $1, $2, $3, $4, $5, _UTF-16LE'A':VARCHAR(2147483647) CHARACTER SET "UTF-16LE", 10, $0), ROW($0, $1, $2, $3, $4, $5, _UTF-16LE'B':VARCHAR(2147483647) CHARACTER SET "UTF-16LE", 20, $0)))], rowType=[RecordType(VARCHAR(2147483647) col, VARCHAR(2147483647) ARRAY array_col, BIGINT BLOCK__OFFSET__INSIDE__FILE, VARCHAR(2147483647) INPUT__FILE__NAME, RecordType(BIGINT writeid, INTEGER bucketid, BIGINT rowid) ROW__ID, BOOLEAN ROW__IS__DELETE [...]
     HiveTableScan(table=[[default, simple_table]], table:alias=[simple_table])
 
@@ -68,7 +68,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@simple_table
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(mycol=[$6])
+HiveProject(mytable.mycol=[$6])
   HiveTableFunctionScan(invocation=[LATERAL(explode($1), $0, $1, $2, $3, $4, $5)], rowType=[RecordType(VARCHAR(2147483647) col, VARCHAR(2147483647) ARRAY array_col, BIGINT BLOCK__OFFSET__INSIDE__FILE, VARCHAR(2147483647) INPUT__FILE__NAME, RecordType(BIGINT writeid, INTEGER bucketid, BIGINT rowid) ROW__ID, BOOLEAN ROW__IS__DELETED, VARCHAR(2147483647) mytable.mycol)])
     HiveTableScan(table=[[default, simple_table]], table:alias=[simple_table])
 
diff --git a/ql/src/test/results/clientpositive/llap/list_bucket_dml_12.q.out b/ql/src/test/results/clientpositive/llap/list_bucket_dml_12.q.out
index d24404b0ce8..6eceddf14b9 100644
--- a/ql/src/test/results/clientpositive/llap/list_bucket_dml_12.q.out
+++ b/ql/src/test/results/clientpositive/llap/list_bucket_dml_12.q.out
@@ -26,7 +26,7 @@ select 1, key, 1, value, 1 from src
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 POSTHOOK: Output: default@list_bucketing_mul_col_n0@ds=2008-04-08/hr=11
-OPTIMIZED SQL: SELECT 1 AS `_o__c0`, `key`, 1 AS `_o__c2`, `value`, 1 AS `_o__c4`
+OPTIMIZED SQL: SELECT 1 AS `_c0`, `key`, 1 AS `_c2`, `value`, 1 AS `_c4`
 FROM `default`.`src`
 STAGE DEPENDENCIES:
   Stage-1 is a root stage
@@ -302,7 +302,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@list_bucketing_mul_col_n0
 POSTHOOK: Input: default@list_bucketing_mul_col_n0@ds=2008-04-08/hr=11
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `col1`, CAST('466' AS STRING) AS `col2`, `col3`, CAST('val_466' AS STRING) AS `col4`, `col5`, CAST('2008-04-08' AS STRING) AS `ds`, CAST('11' AS STRING) AS `hr`
+OPTIMIZED SQL: SELECT `col1` AS `list_bucketing_mul_col_n0.col1`, CAST('466' AS STRING) AS `list_bucketing_mul_col_n0.col2`, `col3` AS `list_bucketing_mul_col_n0.col3`, CAST('val_466' AS STRING) AS `list_bucketing_mul_col_n0.col4`, `col5` AS `list_bucketing_mul_col_n0.col5`, CAST('2008-04-08' AS STRING) AS `list_bucketing_mul_col_n0.ds`, CAST('11' AS STRING) AS `list_bucketing_mul_col_n0.hr`
 FROM `default`.`list_bucketing_mul_col_n0`
 WHERE `col2` = '466' AND `col4` = 'val_466' AND `ds` = '2008-04-08' AND `hr` = '11'
 STAGE DEPENDENCIES:
@@ -390,7 +390,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@list_bucketing_mul_col_n0
 POSTHOOK: Input: default@list_bucketing_mul_col_n0@ds=2008-04-08/hr=11
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `col1`, CAST('382' AS STRING) AS `col2`, `col3`, CAST('val_382' AS STRING) AS `col4`, `col5`, CAST('2008-04-08' AS STRING) AS `ds`, CAST('11' AS STRING) AS `hr`
+OPTIMIZED SQL: SELECT `col1` AS `list_bucketing_mul_col_n0.col1`, CAST('382' AS STRING) AS `list_bucketing_mul_col_n0.col2`, `col3` AS `list_bucketing_mul_col_n0.col3`, CAST('val_382' AS STRING) AS `list_bucketing_mul_col_n0.col4`, `col5` AS `list_bucketing_mul_col_n0.col5`, CAST('2008-04-08' AS STRING) AS `list_bucketing_mul_col_n0.ds`, CAST('11' AS STRING) AS `list_bucketing_mul_col_n0.hr`
 FROM `default`.`list_bucketing_mul_col_n0`
 WHERE `col2` = '382' AND `col4` = 'val_382' AND `ds` = '2008-04-08' AND `hr` = '11'
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/list_bucket_dml_13.q.out b/ql/src/test/results/clientpositive/llap/list_bucket_dml_13.q.out
index 604c9a8dc67..48459287b44 100644
--- a/ql/src/test/results/clientpositive/llap/list_bucket_dml_13.q.out
+++ b/ql/src/test/results/clientpositive/llap/list_bucket_dml_13.q.out
@@ -26,7 +26,7 @@ select 1, key, 1, value, 1 from src
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 POSTHOOK: Output: default@list_bucketing_mul_col@ds=2008-04-08/hr=2013-01-23+18%3A00%3A99
-OPTIMIZED SQL: SELECT 1 AS `_o__c0`, `key`, 1 AS `_o__c2`, `value`, 1 AS `_o__c4`
+OPTIMIZED SQL: SELECT 1 AS `_c0`, `key`, 1 AS `_c2`, `value`, 1 AS `_c4`
 FROM `default`.`src`
 STAGE DEPENDENCIES:
   Stage-1 is a root stage
@@ -302,7 +302,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@list_bucketing_mul_col
 POSTHOOK: Input: default@list_bucketing_mul_col@ds=2008-04-08/hr=2013-01-23+18%3A00%3A99
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `col1`, CAST('466' AS STRING) AS `col2`, `col3`, CAST('val_466' AS STRING) AS `col4`, `col5`, CAST('2008-04-08' AS STRING) AS `ds`, CAST('2013-01-23+18:00:99' AS STRING) AS `hr`
+OPTIMIZED SQL: SELECT `col1` AS `list_bucketing_mul_col.col1`, CAST('466' AS STRING) AS `list_bucketing_mul_col.col2`, `col3` AS `list_bucketing_mul_col.col3`, CAST('val_466' AS STRING) AS `list_bucketing_mul_col.col4`, `col5` AS `list_bucketing_mul_col.col5`, CAST('2008-04-08' AS STRING) AS `list_bucketing_mul_col.ds`, CAST('2013-01-23+18:00:99' AS STRING) AS `list_bucketing_mul_col.hr`
 FROM `default`.`list_bucketing_mul_col`
 WHERE `col2` = '466' AND `col4` = 'val_466' AND `ds` = '2008-04-08' AND `hr` = '2013-01-23+18:00:99'
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/list_bucket_dml_14.q.out b/ql/src/test/results/clientpositive/llap/list_bucket_dml_14.q.out
index 6f2e0292b54..5a0212677ce 100644
--- a/ql/src/test/results/clientpositive/llap/list_bucket_dml_14.q.out
+++ b/ql/src/test/results/clientpositive/llap/list_bucket_dml_14.q.out
@@ -20,7 +20,7 @@ insert overwrite table list_bucketing select * from src
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 POSTHOOK: Output: default@list_bucketing
-OPTIMIZED SQL: SELECT `key`, `value`
+OPTIMIZED SQL: SELECT `key` AS `src.key`, `value` AS `src.value`
 FROM `default`.`src`
 STAGE DEPENDENCIES:
   Stage-1 is a root stage
diff --git a/ql/src/test/results/clientpositive/llap/list_bucket_dml_2.q.out b/ql/src/test/results/clientpositive/llap/list_bucket_dml_2.q.out
index de83fa55df1..3c51f7bb795 100644
--- a/ql/src/test/results/clientpositive/llap/list_bucket_dml_2.q.out
+++ b/ql/src/test/results/clientpositive/llap/list_bucket_dml_2.q.out
@@ -365,7 +365,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@list_bucketing_static_part_n4
 POSTHOOK: Input: default@list_bucketing_static_part_n4@ds=2008-04-08/hr=11
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST('484' AS STRING) AS `$f0`, CAST('val_484' AS STRING) AS `$f1`, CAST('2008-04-08' AS STRING) AS `$f2`, CAST('11' AS STRING) AS `$f3`
+OPTIMIZED SQL: SELECT CAST('484' AS STRING) AS `list_bucketing_static_part_n4.key`, CAST('val_484' AS STRING) AS `list_bucketing_static_part_n4.value`, CAST('2008-04-08' AS STRING) AS `list_bucketing_static_part_n4.ds`, CAST('11' AS STRING) AS `list_bucketing_static_part_n4.hr`
 FROM `default`.`list_bucketing_static_part_n4`
 WHERE `key` = '484' AND `value` = 'val_484' AND `ds` = '2008-04-08' AND `hr` = '11'
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/list_bucket_dml_4.q.out b/ql/src/test/results/clientpositive/llap/list_bucket_dml_4.q.out
index c6dbd56b9e1..2c96a8a2387 100644
--- a/ql/src/test/results/clientpositive/llap/list_bucket_dml_4.q.out
+++ b/ql/src/test/results/clientpositive/llap/list_bucket_dml_4.q.out
@@ -686,7 +686,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@list_bucketing_static_part_n2
 POSTHOOK: Input: default@list_bucketing_static_part_n2@ds=2008-04-08/hr=11
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST('484' AS STRING) AS `$f0`, CAST('val_484' AS STRING) AS `$f1`, CAST('2008-04-08' AS STRING) AS `$f2`, CAST('11' AS STRING) AS `$f3`
+OPTIMIZED SQL: SELECT CAST('484' AS STRING) AS `list_bucketing_static_part_n2.key`, CAST('val_484' AS STRING) AS `list_bucketing_static_part_n2.value`, CAST('2008-04-08' AS STRING) AS `list_bucketing_static_part_n2.ds`, CAST('11' AS STRING) AS `list_bucketing_static_part_n2.hr`
 FROM `default`.`list_bucketing_static_part_n2`
 WHERE `key` = '484' AND `value` = 'val_484' AND `ds` = '2008-04-08' AND `hr` = '11'
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/list_bucket_dml_6.q.out b/ql/src/test/results/clientpositive/llap/list_bucket_dml_6.q.out
index 71dfac0b19d..dbcf49b202e 100644
--- a/ql/src/test/results/clientpositive/llap/list_bucket_dml_6.q.out
+++ b/ql/src/test/results/clientpositive/llap/list_bucket_dml_6.q.out
@@ -29,7 +29,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
-OPTIMIZED SQL: SELECT `key`, `value`, CAST(CASE WHEN CAST(`key` AS DOUBLE) % 100 = 0 THEN 'a1' ELSE 'b1' END AS STRING) AS `_o__c2`
+OPTIMIZED SQL: SELECT `key`, `value`, CAST(CASE WHEN CAST(`key` AS DOUBLE) % 100 = 0 THEN 'a1' ELSE 'b1' END AS STRING) AS `_c2`
 FROM `default`.`srcpart`
 WHERE `ds` = '2008-04-08'
 STAGE DEPENDENCIES:
@@ -394,7 +394,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
-OPTIMIZED SQL: SELECT `key`, `value`, CAST(CASE WHEN CAST(`key` AS DOUBLE) % 100 = 0 THEN 'a1' ELSE 'b1' END AS STRING) AS `_o__c2`
+OPTIMIZED SQL: SELECT `key`, `value`, CAST(CASE WHEN CAST(`key` AS DOUBLE) % 100 = 0 THEN 'a1' ELSE 'b1' END AS STRING) AS `_c2`
 FROM `default`.`srcpart`
 WHERE `ds` = '2008-04-08'
 STAGE DEPENDENCIES:
@@ -776,7 +776,7 @@ POSTHOOK: Input: default@list_bucketing_dynamic_part_n3
 POSTHOOK: Input: default@list_bucketing_dynamic_part_n3@ds=2008-04-08/hr=a1
 POSTHOOK: Input: default@list_bucketing_dynamic_part_n3@ds=2008-04-08/hr=b1
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST('484' AS STRING) AS `key`, CAST('val_484' AS STRING) AS `value`, `ds`, `hr`
+OPTIMIZED SQL: SELECT CAST('484' AS STRING) AS `list_bucketing_dynamic_part_n3.key`, CAST('val_484' AS STRING) AS `list_bucketing_dynamic_part_n3.value`, `ds` AS `list_bucketing_dynamic_part_n3.ds`, `hr` AS `list_bucketing_dynamic_part_n3.hr`
 FROM `default`.`list_bucketing_dynamic_part_n3`
 WHERE `key` = '484' AND `value` = 'val_484'
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/list_bucket_dml_7.q.out b/ql/src/test/results/clientpositive/llap/list_bucket_dml_7.q.out
index 5d3417aadb5..ad705139815 100644
--- a/ql/src/test/results/clientpositive/llap/list_bucket_dml_7.q.out
+++ b/ql/src/test/results/clientpositive/llap/list_bucket_dml_7.q.out
@@ -29,7 +29,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
-OPTIMIZED SQL: SELECT `key`, `value`, CAST(CASE WHEN CAST(`key` AS DOUBLE) % 100 = 0 THEN 'a1' ELSE 'b1' END AS STRING) AS `_o__c2`
+OPTIMIZED SQL: SELECT `key`, `value`, CAST(CASE WHEN CAST(`key` AS DOUBLE) % 100 = 0 THEN 'a1' ELSE 'b1' END AS STRING) AS `_c2`
 FROM `default`.`srcpart`
 WHERE `ds` = '2008-04-08'
 STAGE DEPENDENCIES:
@@ -394,7 +394,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
-OPTIMIZED SQL: SELECT `key`, `value`, CAST(CASE WHEN CAST(`key` AS DOUBLE) % 100 = 0 THEN 'a1' ELSE 'b1' END AS STRING) AS `_o__c2`
+OPTIMIZED SQL: SELECT `key`, `value`, CAST(CASE WHEN CAST(`key` AS DOUBLE) % 100 = 0 THEN 'a1' ELSE 'b1' END AS STRING) AS `_c2`
 FROM `default`.`srcpart`
 WHERE `ds` = '2008-04-08'
 STAGE DEPENDENCIES:
@@ -776,7 +776,7 @@ POSTHOOK: Input: default@list_bucketing_dynamic_part
 POSTHOOK: Input: default@list_bucketing_dynamic_part@ds=2008-04-08/hr=a1
 POSTHOOK: Input: default@list_bucketing_dynamic_part@ds=2008-04-08/hr=b1
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST('484' AS STRING) AS `key`, CAST('val_484' AS STRING) AS `value`, `ds`, `hr`
+OPTIMIZED SQL: SELECT CAST('484' AS STRING) AS `list_bucketing_dynamic_part.key`, CAST('val_484' AS STRING) AS `list_bucketing_dynamic_part.value`, `ds` AS `list_bucketing_dynamic_part.ds`, `hr` AS `list_bucketing_dynamic_part.hr`
 FROM `default`.`list_bucketing_dynamic_part`
 WHERE `key` = '484' AND `value` = 'val_484'
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/list_bucket_dml_8.q.out b/ql/src/test/results/clientpositive/llap/list_bucket_dml_8.q.out
index 18bac2adbf2..148303926d6 100644
--- a/ql/src/test/results/clientpositive/llap/list_bucket_dml_8.q.out
+++ b/ql/src/test/results/clientpositive/llap/list_bucket_dml_8.q.out
@@ -29,7 +29,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
-OPTIMIZED SQL: SELECT `key`, `value`, CAST(CASE WHEN CAST(`key` AS DOUBLE) % 100 = 0 THEN 'a1' ELSE 'b1' END AS STRING) AS `_o__c2`
+OPTIMIZED SQL: SELECT `key`, `value`, CAST(CASE WHEN CAST(`key` AS DOUBLE) % 100 = 0 THEN 'a1' ELSE 'b1' END AS STRING) AS `_c2`
 FROM `default`.`srcpart`
 WHERE `ds` = '2008-04-08'
 STAGE DEPENDENCIES:
@@ -465,7 +465,7 @@ POSTHOOK: Input: default@list_bucketing_dynamic_part_n2
 POSTHOOK: Input: default@list_bucketing_dynamic_part_n2@ds=2008-04-08/hr=a1
 POSTHOOK: Input: default@list_bucketing_dynamic_part_n2@ds=2008-04-08/hr=b1
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST('484' AS STRING) AS `key`, CAST('val_484' AS STRING) AS `value`, `ds`, `hr`
+OPTIMIZED SQL: SELECT CAST('484' AS STRING) AS `list_bucketing_dynamic_part_n2.key`, CAST('val_484' AS STRING) AS `list_bucketing_dynamic_part_n2.value`, `ds` AS `list_bucketing_dynamic_part_n2.ds`, `hr` AS `list_bucketing_dynamic_part_n2.hr`
 FROM `default`.`list_bucketing_dynamic_part_n2`
 WHERE `key` = '484' AND `value` = 'val_484'
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/list_bucket_dml_9.q.out b/ql/src/test/results/clientpositive/llap/list_bucket_dml_9.q.out
index 6d853aec36c..5d5f6d75fbb 100644
--- a/ql/src/test/results/clientpositive/llap/list_bucket_dml_9.q.out
+++ b/ql/src/test/results/clientpositive/llap/list_bucket_dml_9.q.out
@@ -686,7 +686,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@list_bucketing_static_part_n0
 POSTHOOK: Input: default@list_bucketing_static_part_n0@ds=2008-04-08/hr=11
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST('484' AS STRING) AS `$f0`, CAST('val_484' AS STRING) AS `$f1`, CAST('2008-04-08' AS STRING) AS `$f2`, CAST('11' AS STRING) AS `$f3`
+OPTIMIZED SQL: SELECT CAST('484' AS STRING) AS `list_bucketing_static_part_n0.key`, CAST('val_484' AS STRING) AS `list_bucketing_static_part_n0.value`, CAST('2008-04-08' AS STRING) AS `list_bucketing_static_part_n0.ds`, CAST('11' AS STRING) AS `list_bucketing_static_part_n0.hr`
 FROM `default`.`list_bucketing_static_part_n0`
 WHERE `key` = '484' AND `value` = 'val_484' AND `ds` = '2008-04-08' AND `hr` = '11'
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/list_bucket_query_multiskew_1.q.out b/ql/src/test/results/clientpositive/llap/list_bucket_query_multiskew_1.q.out
index 41312cc85ee..af81aa82415 100644
--- a/ql/src/test/results/clientpositive/llap/list_bucket_query_multiskew_1.q.out
+++ b/ql/src/test/results/clientpositive/llap/list_bucket_query_multiskew_1.q.out
@@ -86,7 +86,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@fact_daily
 POSTHOOK: Input: default@fact_daily@ds=1/hr=4
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST('484' AS STRING) AS `$f0`
+OPTIMIZED SQL: SELECT CAST('484' AS STRING) AS `key`
 FROM `default`.`fact_daily`
 WHERE `key` = '484' AND `value` = 'val_484' AND `ds` = '1' AND `hr` = '4'
 STAGE DEPENDENCIES:
@@ -166,7 +166,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@fact_daily
 POSTHOOK: Input: default@fact_daily@ds=1/hr=4
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST('238' AS STRING) AS `$f0`, CAST('val_238' AS STRING) AS `$f1`
+OPTIMIZED SQL: SELECT CAST('238' AS STRING) AS `key`, CAST('val_238' AS STRING) AS `value`
 FROM `default`.`fact_daily`
 WHERE `key` = '238' AND `value` = 'val_238' AND `ds` = '1' AND `hr` = '4'
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/list_bucket_query_multiskew_2.q.out b/ql/src/test/results/clientpositive/llap/list_bucket_query_multiskew_2.q.out
index 45abe53191b..76dea2f47ae 100644
--- a/ql/src/test/results/clientpositive/llap/list_bucket_query_multiskew_2.q.out
+++ b/ql/src/test/results/clientpositive/llap/list_bucket_query_multiskew_2.q.out
@@ -166,7 +166,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@fact_daily_n2
 POSTHOOK: Input: default@fact_daily_n2@ds=1/hr=4
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST('406' AS STRING) AS `$f0`
+OPTIMIZED SQL: SELECT CAST('406' AS STRING) AS `key`
 FROM `default`.`fact_daily_n2`
 WHERE `key` = '406' AND `ds` = '1' AND `hr` = '4'
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/list_bucket_query_multiskew_3.q.out b/ql/src/test/results/clientpositive/llap/list_bucket_query_multiskew_3.q.out
index e46a77ada55..d3975c15ee6 100644
--- a/ql/src/test/results/clientpositive/llap/list_bucket_query_multiskew_3.q.out
+++ b/ql/src/test/results/clientpositive/llap/list_bucket_query_multiskew_3.q.out
@@ -196,7 +196,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@fact_daily_n3
 POSTHOOK: Input: default@fact_daily_n3@ds=1/hr=1
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST('145' AS STRING) AS `key`, `value`, CAST('1' AS STRING) AS `ds`, CAST('1' AS STRING) AS `hr`
+OPTIMIZED SQL: SELECT CAST('145' AS STRING) AS `fact_daily_n3.key`, `value` AS `fact_daily_n3.value`, CAST('1' AS STRING) AS `fact_daily_n3.ds`, CAST('1' AS STRING) AS `fact_daily_n3.hr`
 FROM `default`.`fact_daily_n3`
 WHERE `key` = '145' AND `ds` = '1' AND `hr` = '1'
 STAGE DEPENDENCIES:
@@ -276,7 +276,7 @@ select count(*) from fact_daily_n3 where ds = '1' and  hr='1'
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@fact_daily_n3
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM `default`.`fact_daily_n3`
 WHERE `ds` = '1' AND `hr` = '1'
 STAGE DEPENDENCIES:
@@ -310,7 +310,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@fact_daily_n3
 POSTHOOK: Input: default@fact_daily_n3@ds=1/hr=2
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST('484' AS STRING) AS `$f0`, CAST('val_484' AS STRING) AS `$f1`, CAST('1' AS STRING) AS `$f2`, CAST('2' AS STRING) AS `$f3`
+OPTIMIZED SQL: SELECT CAST('484' AS STRING) AS `fact_daily_n3.key`, CAST('val_484' AS STRING) AS `fact_daily_n3.value`, CAST('1' AS STRING) AS `fact_daily_n3.ds`, CAST('2' AS STRING) AS `fact_daily_n3.hr`
 FROM `default`.`fact_daily_n3`
 WHERE `key` = '484' AND `value` = 'val_484' AND `ds` = '1' AND `hr` = '2'
 STAGE DEPENDENCIES:
@@ -392,7 +392,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@fact_daily_n3
 POSTHOOK: Input: default@fact_daily_n3@ds=1/hr=3
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST('327' AS STRING) AS `$f0`, CAST('val_327' AS STRING) AS `$f1`, CAST('1' AS STRING) AS `$f2`, CAST('3' AS STRING) AS `$f3`
+OPTIMIZED SQL: SELECT CAST('327' AS STRING) AS `fact_daily_n3.key`, CAST('val_327' AS STRING) AS `fact_daily_n3.value`, CAST('1' AS STRING) AS `fact_daily_n3.ds`, CAST('3' AS STRING) AS `fact_daily_n3.hr`
 FROM `default`.`fact_daily_n3`
 WHERE `key` = '327' AND `value` = 'val_327' AND `ds` = '1' AND `hr` = '3'
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/list_bucket_query_oneskew_1.q.out b/ql/src/test/results/clientpositive/llap/list_bucket_query_oneskew_1.q.out
index 1f6823d4e8d..9c9e5002023 100644
--- a/ql/src/test/results/clientpositive/llap/list_bucket_query_oneskew_1.q.out
+++ b/ql/src/test/results/clientpositive/llap/list_bucket_query_oneskew_1.q.out
@@ -138,7 +138,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@fact_daily_n4
 POSTHOOK: Input: default@fact_daily_n4@ds=1
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST(484 AS INT) AS `$f0`
+OPTIMIZED SQL: SELECT CAST(484 AS INT) AS `x`
 FROM `default`.`fact_daily_n4`
 WHERE `x` = 484 AND `ds` = '1'
 STAGE DEPENDENCIES:
@@ -218,7 +218,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@fact_daily_n4
 POSTHOOK: Input: default@fact_daily_n4@ds=1
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST(495 AS INT) AS `$f0`
+OPTIMIZED SQL: SELECT CAST(495 AS INT) AS `x`
 FROM `default`.`fact_daily_n4`
 WHERE `x` = 495 AND `ds` = '1'
 STAGE DEPENDENCIES:
@@ -298,7 +298,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@fact_daily_n4
 POSTHOOK: Input: default@fact_daily_n4@ds=1
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST(1 AS INT) AS `$f0`
+OPTIMIZED SQL: SELECT CAST(1 AS INT) AS `x`
 FROM `default`.`fact_daily_n4`
 WHERE `x` = 1 AND `ds` = '1'
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/list_bucket_query_oneskew_2.q.out b/ql/src/test/results/clientpositive/llap/list_bucket_query_oneskew_2.q.out
index 55bb4c37faa..6fa1a3cebad 100644
--- a/ql/src/test/results/clientpositive/llap/list_bucket_query_oneskew_2.q.out
+++ b/ql/src/test/results/clientpositive/llap/list_bucket_query_oneskew_2.q.out
@@ -141,7 +141,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@fact_daily_n5
 POSTHOOK: Input: default@fact_daily_n5@ds=1
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST(484 AS INT) AS `$f0`
+OPTIMIZED SQL: SELECT CAST(484 AS INT) AS `x`
 FROM `default`.`fact_daily_n5`
 WHERE `ds` = '1' AND `x` = 484
 STAGE DEPENDENCIES:
@@ -301,7 +301,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@fact_daily_n5
 POSTHOOK: Input: default@fact_daily_n5@ds=1
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `y`, COUNT(*) AS `$f1`
+OPTIMIZED SQL: SELECT `y`, COUNT(*) AS `_c1`
 FROM `default`.`fact_daily_n5`
 WHERE `ds` = '1' AND `x` = 484
 GROUP BY `y`
diff --git a/ql/src/test/results/clientpositive/llap/louter_join_ppr.q.out b/ql/src/test/results/clientpositive/llap/louter_join_ppr.q.out
index 980e285525a..695a3b4b456 100644
--- a/ql/src/test/results/clientpositive/llap/louter_join_ppr.q.out
+++ b/ql/src/test/results/clientpositive/llap/louter_join_ppr.q.out
@@ -26,7 +26,7 @@ POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT *
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`key` AS `b.key`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`src`
 WHERE `key` > 15 AND `key` < 20 AND `key` IS NOT NULL) AS `t0`
@@ -328,7 +328,7 @@ POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT *
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`key` AS `b.key`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`srcpart`
 WHERE `key` > 15 AND `key` < 20 AND `ds` = '2008-04-08' AND `key` IS NOT NULL) AS `t0`
@@ -630,7 +630,7 @@ POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT *
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`key` AS `b.key`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`src`
 WHERE `key` > 15 AND `key` < 20 AND `key` IS NOT NULL) AS `t0`
@@ -932,7 +932,7 @@ POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT *
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`key` AS `b.key`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`srcpart`
 WHERE `key` > 15 AND `key` < 20 AND `ds` = '2008-04-08' AND `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/macro.q.out b/ql/src/test/results/clientpositive/llap/macro.q.out
index 2f3dc61dc98..01cdb2e04f2 100644
--- a/ql/src/test/results/clientpositive/llap/macro.q.out
+++ b/ql/src/test/results/clientpositive/llap/macro.q.out
@@ -46,7 +46,7 @@ POSTHOOK: query: EXPLAIN EXTENDED SELECT SIGMOID(2) FROM src LIMIT 1
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST(0.8807970779778823 AS DOUBLE) AS `_o__c0`
+OPTIMIZED SQL: SELECT CAST(0.8807970779778823 AS DOUBLE) AS `_c0`
 FROM `default`.`src`
 LIMIT 1
 STAGE DEPENDENCIES:
@@ -121,7 +121,7 @@ POSTHOOK: query: EXPLAIN EXTENDED SELECT FIXED_NUMBER() + 1 FROM src LIMIT 1
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST(2 AS INT) AS `_o__c0`
+OPTIMIZED SQL: SELECT CAST(2 AS INT) AS `_c0`
 FROM `default`.`src`
 LIMIT 1
 STAGE DEPENDENCIES:
@@ -223,7 +223,7 @@ POSTHOOK: query: EXPLAIN EXTENDED SELECT SIMPLE_ADD(1, 9) FROM src LIMIT 1
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST(10 AS INT) AS `_o__c0`
+OPTIMIZED SQL: SELECT CAST(10 AS INT) AS `_c0`
 FROM `default`.`src`
 LIMIT 1
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/mapjoin_mapjoin.q.out b/ql/src/test/results/clientpositive/llap/mapjoin_mapjoin.q.out
index 8b8f23d3dc9..8915a929649 100644
--- a/ql/src/test/results/clientpositive/llap/mapjoin_mapjoin.q.out
+++ b/ql/src/test/results/clientpositive/llap/mapjoin_mapjoin.q.out
@@ -18,7 +18,7 @@ POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 POSTHOOK: Input: default@srcpart@ds=2008-04-09/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-09/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t2`.`key`
+OPTIMIZED SQL: SELECT `t2`.`key` AS `srcpart.key`
 FROM (SELECT `value`
 FROM `default`.`src`
 WHERE `value` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/masking_12.q.out b/ql/src/test/results/clientpositive/llap/masking_12.q.out
index a4b29f8f838..a216e85100b 100644
--- a/ql/src/test/results/clientpositive/llap/masking_12.q.out
+++ b/ql/src/test/results/clientpositive/llap/masking_12.q.out
@@ -112,7 +112,7 @@ POSTHOOK: Input: default@v1_n9
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortLimit(fetch=[20])
-  HiveProject(key=[$0], value=[$1])
+  HiveProject(v1_n9.key=[$0], v1_n9.value=[$1])
     HiveSemiJoin(condition=[AND(=($0, $3), =($4, $2))], joinType=[semi])
       HiveProject(key=[$0], value=[$1], key1=[CAST($0):DOUBLE])
         HiveFilter(condition=[IS NOT NULL(CAST($0):DOUBLE)])
diff --git a/ql/src/test/results/clientpositive/llap/masking_3.q.out b/ql/src/test/results/clientpositive/llap/masking_3.q.out
index 40d57489961..1a096a32ab0 100644
--- a/ql/src/test/results/clientpositive/llap/masking_3.q.out
+++ b/ql/src/test/results/clientpositive/llap/masking_3.q.out
@@ -21,7 +21,7 @@ POSTHOOK: Input: default@masking_test_subq_n3
 POSTHOOK: Input: default@src
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[$0], value=[$1])
+HiveProject(masking_test_subq_n3.key=[$0], masking_test_subq_n3.value=[$1])
   HiveSemiJoin(condition=[AND(=($0, $3), =($4, $2))], joinType=[semi])
     HiveProject(key=[$0], value=[$1], key1=[CAST($0):DOUBLE])
       HiveFilter(condition=[IS NOT NULL(CAST($0):DOUBLE)])
@@ -647,7 +647,7 @@ POSTHOOK: Input: default@masking_test_subq_n3
 POSTHOOK: Input: default@src
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[$0], value=[$1])
+HiveProject(masking_test_subq_n3.key=[$0], masking_test_subq_n3.value=[$1])
   HiveSemiJoin(condition=[AND(=($0, $3), =($4, $2))], joinType=[semi])
     HiveProject(key=[$0], value=[$1], key1=[CAST($0):DOUBLE])
       HiveFilter(condition=[AND(>($0, 0), IS NOT NULL(CAST($0):DOUBLE))])
@@ -2530,7 +2530,7 @@ POSTHOOK: Input: default@srcpart@ds=2008-04-09/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-09/hr=12
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[$5], value=[$6], key1=[$0], value1=[$1], ds=[$2], hr=[$3])
+HiveProject(masking_test_subq_n3.key=[$5], masking_test_subq_n3.value=[$6], srcpart.key=[$0], srcpart.value=[$1], srcpart.ds=[$2], srcpart.hr=[$3])
   HiveJoin(condition=[=($7, $4)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(key=[$0], value=[$1], ds=[$2], hr=[$3], EXPR$0=[CAST($0):DOUBLE])
       HiveFilter(condition=[IS NOT NULL(CAST($0):DOUBLE)])
@@ -6842,7 +6842,7 @@ POSTHOOK: Input: default@masking_test_subq_n3
 POSTHOOK: Input: default@src
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[$0], value=[$1])
+HiveProject(masking_test_subq_n3.key=[$0], masking_test_subq_n3.value=[$1])
   HiveSemiJoin(condition=[AND(=($0, $3), =($4, $2))], joinType=[semi])
     HiveProject(key=[$0], value=[$1], key1=[CAST($0):DOUBLE])
       HiveFilter(condition=[AND(>($0, 0), IS NOT NULL(CAST($0):DOUBLE))])
@@ -7465,7 +7465,7 @@ POSTHOOK: Input: default@masking_test_subq_n3
 POSTHOOK: Input: default@src
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[$0], value=[$1])
+HiveProject(masking_test_subq_n3.key=[$0], masking_test_subq_n3.value=[$1])
   HiveSemiJoin(condition=[AND(=($0, $3), =($4, $2))], joinType=[semi])
     HiveProject(key=[$0], value=[$1], key1=[CAST($0):DOUBLE])
       HiveFilter(condition=[AND(>($0, 0), IS NOT NULL(CAST($0):DOUBLE))])
diff --git a/ql/src/test/results/clientpositive/llap/masking_4.q.out b/ql/src/test/results/clientpositive/llap/masking_4.q.out
index f3eee2cf7d5..77d9736377d 100644
--- a/ql/src/test/results/clientpositive/llap/masking_4.q.out
+++ b/ql/src/test/results/clientpositive/llap/masking_4.q.out
@@ -129,7 +129,7 @@ POSTHOOK: Input: default@masking_test_subq_n2
 POSTHOOK: Input: default@src
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(key=[$0], value=[$1])
+HiveProject(masking_test_subq_n2.key=[$0], masking_test_subq_n2.value=[$1])
   HiveSemiJoin(condition=[AND(=($0, $3), =($4, $2))], joinType=[semi])
     HiveProject(key=[$0], value=[$1], key1=[CAST($0):DOUBLE])
       HiveFilter(condition=[IS NOT NULL(CAST($0):DOUBLE)])
diff --git a/ql/src/test/results/clientpositive/llap/masking_mv_by_text.q.out b/ql/src/test/results/clientpositive/llap/masking_mv_by_text.q.out
index abd4e663e98..ecf4380ad0d 100644
--- a/ql/src/test/results/clientpositive/llap/masking_mv_by_text.q.out
+++ b/ql/src/test/results/clientpositive/llap/masking_mv_by_text.q.out
@@ -229,7 +229,8 @@ POSTHOOK: Input: default@masking_test_view_n_mv
 POSTHOOK: Input: default@masking_test_view_n_mv_masked
 #### A masked pattern was here ####
 CBO PLAN:
-HiveTableScan(table=[[default, masking_test_view_n_mv_masked]], table:alias=[default.masking_test_view_n_mv_masked])
+HiveProject(key=[$0])
+  HiveTableScan(table=[[default, masking_test_view_n_mv_masked]], table:alias=[default.masking_test_view_n_mv_masked])
 
 PREHOOK: query: select key from `masking_test_n_mv`
 PREHOOK: type: QUERY
diff --git a/ql/src/test/results/clientpositive/llap/masking_mv_by_text_2.q.out b/ql/src/test/results/clientpositive/llap/masking_mv_by_text_2.q.out
index 6f548332a53..277ef63c41f 100644
--- a/ql/src/test/results/clientpositive/llap/masking_mv_by_text_2.q.out
+++ b/ql/src/test/results/clientpositive/llap/masking_mv_by_text_2.q.out
@@ -39,15 +39,16 @@ POSTHOOK: Input: default@masking_test_n_mv
 POSTHOOK: Input: default@masking_test_view_n_mv
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{0}])
-  HiveProject(col0=[$0])
-    HiveUnion(all=[true])
-      HiveProject(col0=[CAST($0):VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
-        HiveFilter(condition=[AND(<($0, 10), =(MOD($0, 2), 0))])
-          HiveTableScan(table=[[default, masking_test_n_mv]], table:alias=[masking_test_n_mv])
-      HiveProject(col0=[reverse($1)])
-        HiveFilter(condition=[AND(<($0, 10), =(MOD($0, 2), 0))])
-          HiveTableScan(table=[[default, masking_test_n_mv]], table:alias=[masking_test_n_mv])
+HiveProject(col0=[$0])
+  HiveAggregate(group=[{0}])
+    HiveProject(col0=[$0])
+      HiveUnion(all=[true])
+        HiveProject(col0=[CAST($0):VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
+          HiveFilter(condition=[AND(<($0, 10), =(MOD($0, 2), 0))])
+            HiveTableScan(table=[[default, masking_test_n_mv]], table:alias=[masking_test_n_mv])
+        HiveProject(col0=[reverse($1)])
+          HiveFilter(condition=[AND(<($0, 10), =(MOD($0, 2), 0))])
+            HiveTableScan(table=[[default, masking_test_n_mv]], table:alias=[masking_test_n_mv])
 
 Only query text based automatic rewriting is available for materialized view. Statement has unsupported operator: union.
 PREHOOK: query: create materialized view `masking_test_view_n_mv_masked` as
@@ -78,7 +79,8 @@ POSTHOOK: Input: default@masking_test_view_n_mv
 POSTHOOK: Input: default@masking_test_view_n_mv_masked
 #### A masked pattern was here ####
 CBO PLAN:
-HiveTableScan(table=[[default, masking_test_view_n_mv_masked]], table:alias=[default.masking_test_view_n_mv_masked])
+HiveProject(col0=[$0])
+  HiveTableScan(table=[[default, masking_test_view_n_mv_masked]], table:alias=[default.masking_test_view_n_mv_masked])
 
 PREHOOK: query: select col0 from (select cast(key as string) col0 from `masking_test_n_mv` union select value col0 from `masking_test_n_mv`) sub
 PREHOOK: type: QUERY
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_count_distinct.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_count_distinct.q.out
index f710a6bcb19..7a48899e28f 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_count_distinct.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_count_distinct.q.out
@@ -43,7 +43,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: count_distinct@base
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(_o__c0=[$1])
+HiveProject(_c0=[$1])
   HiveAggregate(group=[{1}], agg#0=[count($0)])
     HiveProject(c1=[$0], c2=[$1])
       HiveAggregate(group=[{0, 1}])
@@ -86,7 +86,7 @@ POSTHOOK: Input: count_distinct@base
 POSTHOOK: Input: count_distinct@base_mview1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(_o__c0=[$1])
+HiveProject(_c0=[$1])
   HiveAggregate(group=[{1}], agg#0=[count($0)])
     HiveTableScan(table=[[count_distinct, base_mview1]], table:alias=[count_distinct.base_mview1])
 
@@ -138,7 +138,7 @@ POSTHOOK: Input: count_distinct@base
 POSTHOOK: Input: count_distinct@base_mview2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(_o__c0=[$1])
+HiveProject(_c0=[$1])
   HiveAggregate(group=[{1}], agg#0=[count($0)])
     HiveTableScan(table=[[count_distinct, base_mview2]], table:alias=[count_distinct.base_mview2])
 
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_10.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_10.q.out
index fe359f6d66c..2f54d94a654 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_10.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_10.q.out
@@ -49,7 +49,7 @@ POSTHOOK: type: ALTER_MATERIALIZED_VIEW_REBUILD
 POSTHOOK: Input: default@t1
 POSTHOOK: Output: default@mv1
 CBO PLAN:
-HiveProject(a=[$0], b=[CAST(1):INTEGER])
+HiveProject(t1.a=[$0], t1.b=[CAST(1):INTEGER])
   HiveFilter(condition=[=($1, 1)])
     HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
@@ -139,7 +139,8 @@ POSTHOOK: Input: default@mv1
 POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveTableScan(table=[[default, mv1]], table:alias=[default.mv1])
+HiveProject(a=[$0], b=[$1])
+  HiveTableScan(table=[[default, mv1]], table:alias=[default.mv1])
 
 PREHOOK: query: select a, b from t1 where b = 1
 PREHOOK: type: QUERY
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_11.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_11.q.out
index 34087c975a5..37732927d04 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_11.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_11.q.out
@@ -44,7 +44,7 @@ POSTHOOK: Input: default@mv1
 POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(a=[$0], _o__c1=[CAST(/($1, $2)):DECIMAL(7, 6)])
+HiveProject(a=[$0], _c1=[CAST(/($1, $2)):DECIMAL(7, 6)])
   HiveTableScan(table=[[default, mv1]], table:alias=[default.mv1])
 
 PREHOOK: query: select a, avg(b) from t1 group by a
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_12.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_12.q.out
index 81a33edecfa..14259c700a0 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_12.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_12.q.out
@@ -190,7 +190,8 @@ POSTHOOK: Input: default@mat1
 POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
+HiveProject(a=[$0])
+  HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
 
 PREHOOK: query: SELECT a
 FROM t1
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_6.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_6.q.out
index 2c794c918da..0da424d05bb 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_6.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_6.q.out
@@ -127,7 +127,8 @@ POSTHOOK: Input: default@t1
 POSTHOOK: Input: default@t2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
+HiveProject(t1.a=[$0], _c1=[$1], _c2=[$2], _c3=[$3], _c4=[$4])
+  HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
 
 PREHOOK: query: delete from t1 where b = 1
 PREHOOK: type: QUERY
@@ -219,7 +220,7 @@ POSTHOOK: Input: default@t1
 POSTHOOK: Input: default@t2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(a=[$0], _o__c1=[$1], _o__c2=[$2], _o__c3=[CAST(/($1, $2)):DECIMAL(11, 6)], _o__c4=[$3])
+HiveProject(t1.a=[$0], _c1=[$1], _c2=[$2], _c3=[CAST(/($1, $2)):DECIMAL(11, 6)], _c4=[$3])
   HiveAggregate(group=[{0}], agg#0=[sum($1)], agg#1=[count($1)], agg#2=[count()])
     HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
       HiveProject(a=[$0], b=[$1])
@@ -246,7 +247,7 @@ POSTHOOK: Input: default@t2
 POSTHOOK: Output: default@mat1
 POSTHOOK: Output: default@mat1
 CBO PLAN:
-HiveProject(a=[$5], _o__c1=[CAST(CASE(IS NULL($1), $6, IS NULL($6), $1, +($6, $1))):DECIMAL(17, 2)], _o__c2=[CASE(IS NULL($2), $7, +($7, $2))], _o__c3=[CAST(/(CAST(CASE(IS NULL($1), $6, IS NULL($6), $1, +($6, $1))):DECIMAL(17, 2), CASE(IS NULL($2), $7, +($7, $2)))):DECIMAL(11, 6)], _o__c4=[CASE(IS NULL($3), $8, +($8, $3))])
+HiveProject(t1.a=[$5], _c1=[CAST(CASE(IS NULL($1), $6, IS NULL($6), $1, +($6, $1))):DECIMAL(17, 2)], _c2=[CASE(IS NULL($2), $7, +($7, $2))], _c3=[CAST(/(CAST(CASE(IS NULL($1), $6, IS NULL($6), $1, +($6, $1))):DECIMAL(17, 2), CASE(IS NULL($2), $7, +($7, $2)))):DECIMAL(11, 6)], _c4=[CASE(IS NULL($3), $8, +($8, $3))])
   HiveFilter(condition=[OR(AND($4, OR(AND(IS NULL($3), =($8, 0)), AND(=(+($8, $3), 0), IS NOT NULL($3)))), AND(IS NULL($4), OR(AND(IS NULL($3), >($8, 0)), AND(>(+($8, $3), 0), IS NOT NULL($3)))), AND($4, OR(AND(IS NULL($3), >($8, 0)), AND(>(+($8, $3), 0), IS NOT NULL($3)))))])
     HiveJoin(condition=[IS NOT DISTINCT FROM($0, $5)], joinType=[right], algorithm=[none], cost=[not available])
       HiveProject(a=[$0], _c1=[$1], _c2=[$2], _c4=[$4], $f4=[true])
@@ -703,7 +704,8 @@ POSTHOOK: Input: default@t1
 POSTHOOK: Input: default@t2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
+HiveProject(t1.a=[$0], _c1=[$1], _c2=[$2], _c3=[$3], _c4=[$4])
+  HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
 
 PREHOOK: query: select t1.a, sum(t1.b), count(t1.b), avg(t1.b), count(*) from t1
 join t2 on (t1.a = t2.a)
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_6_aggr_2joins.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_6_aggr_2joins.q.out
index 059859bbc94..efd93217839 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_6_aggr_2joins.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_6_aggr_2joins.q.out
@@ -128,7 +128,7 @@ POSTHOOK: Input: default@cmv_mat_view_n6
 POSTHOOK: Output: default@cmv_mat_view_n6
 POSTHOOK: Output: default@cmv_mat_view_n6
 CBO PLAN:
-HiveProject(a0=[$5], c0=[$6], b0=[$7], $f3=[CASE(IS NULL($3), $8, +($8, $3))])
+HiveProject(cmv_basetable_n6.a=[$5], cmv_basetable_2_n3.c=[$6], cmv_basetable_2_n3.b=[$7], _c3=[CASE(IS NULL($3), $8, +($8, $3))])
   HiveFilter(condition=[OR(AND($4, OR(AND(IS NULL($3), =($8, 0)), AND(=(+($8, $3), 0), IS NOT NULL($3)))), AND(IS NULL($4), OR(AND(IS NULL($3), >($8, 0)), AND(>(+($8, $3), 0), IS NOT NULL($3)))), AND($4, OR(AND(IS NULL($3), >($8, 0)), AND(>(+($8, $3), 0), IS NOT NULL($3)))))])
     HiveJoin(condition=[AND(IS NOT DISTINCT FROM($0, $5), IS NOT DISTINCT FROM($1, $6), IS NOT DISTINCT FROM($2, $7))], joinType=[right], algorithm=[none], cost=[not available])
       HiveProject(a=[$0], c=[$1], b=[$2], _c3=[$3], $f4=[true])
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_6_aggr_3joins.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_6_aggr_3joins.q.out
index 163286b1ff4..a3107db3142 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_6_aggr_3joins.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_6_aggr_3joins.q.out
@@ -158,7 +158,7 @@ POSTHOOK: Input: default@t3
 POSTHOOK: Output: default@mat1
 POSTHOOK: Output: default@mat1
 CBO PLAN:
-HiveProject(a0=[$4], c0=[$5], $f2=[CASE(IS NULL($2), $6, +($6, $2))])
+HiveProject(cmv_basetable_n6.a=[$4], cmv_basetable_2_n3.c=[$5], _c2=[CASE(IS NULL($2), $6, +($6, $2))])
   HiveFilter(condition=[OR(AND($3, OR(AND(IS NULL($2), =($6, 0)), AND(=(+($6, $2), 0), IS NOT NULL($2)))), AND(IS NULL($3), OR(AND(IS NULL($2), >($6, 0)), AND(>(+($6, $2), 0), IS NOT NULL($2)))), AND($3, OR(AND(IS NULL($2), >($6, 0)), AND(>(+($6, $2), 0), IS NOT NULL($2)))))])
     HiveJoin(condition=[AND(IS NOT DISTINCT FROM($0, $4), IS NOT DISTINCT FROM($1, $5))], joinType=[right], algorithm=[none], cost=[not available])
       HiveProject(a=[$0], c=[$1], _c2=[$2], $f3=[true])
@@ -680,7 +680,7 @@ POSTHOOK: Input: default@t3
 POSTHOOK: Output: default@mat1
 POSTHOOK: Output: default@mat1
 CBO PLAN:
-HiveProject(a0=[$4], c0=[$5], $f2=[CASE(IS NULL($2), $6, +($6, $2))])
+HiveProject(cmv_basetable_n6.a=[$4], cmv_basetable_2_n3.c=[$5], _c2=[CASE(IS NULL($2), $6, +($6, $2))])
   HiveFilter(condition=[OR(AND($3, OR(AND(IS NULL($2), =($6, 0)), AND(=(+($6, $2), 0), IS NOT NULL($2)))), AND(IS NULL($3), OR(AND(IS NULL($2), >($6, 0)), AND(>(+($6, $2), 0), IS NOT NULL($2)))), AND($3, OR(AND(IS NULL($2), >($6, 0)), AND(>(+($6, $2), 0), IS NOT NULL($2)))))])
     HiveJoin(condition=[AND(IS NOT DISTINCT FROM($0, $4), IS NOT DISTINCT FROM($1, $5))], joinType=[right], algorithm=[none], cost=[not available])
       HiveProject(a=[$0], c=[$1], _c2=[$2], $f3=[true])
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_7.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_7.q.out
index 80d4fc63f0a..7c3ba78c396 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_7.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_7.q.out
@@ -82,8 +82,9 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{0}], agg#0=[count()])
-  HiveTableScan(table=[[default, t1]], table:alias=[t1])
+HiveProject(t1.a=[$0], _c1=[$1])
+  HiveAggregate(group=[{0}], agg#0=[count()])
+    HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
 PREHOOK: query: explain cbo
 alter materialized view mat1 rebuild
@@ -100,7 +101,7 @@ POSTHOOK: Input: default@t1
 POSTHOOK: Output: default@mat1
 POSTHOOK: Output: default@mat1
 CBO PLAN:
-HiveProject($f0=[$3], $f1=[CASE(IS NULL($1), $4, IS NULL($4), $1, +($4, $1))])
+HiveProject(t1.a=[$3], _c1=[CASE(IS NULL($1), $4, IS NULL($4), $1, +($4, $1))])
   HiveFilter(condition=[OR($2, IS NULL($2))])
     HiveJoin(condition=[IS NOT DISTINCT FROM($0, $3)], joinType=[right], algorithm=[BucketJoin], cost=[not available])
       HiveProject(a=[$0], _c1=[$1], $f2=[true])
@@ -443,7 +444,7 @@ POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortLimit(sort0=[$0], dir0=[ASC])
-  HiveProject(a=[$0], _c1=[$1])
+  HiveProject(t1.a=[$0], _c1=[$1])
     HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
 
 PREHOOK: query: select t1.a, count(*) from t1
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_8.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_8.q.out
index 3f7007a1501..68eba9e6360 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_8.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_8.q.out
@@ -111,7 +111,7 @@ POSTHOOK: Input: default@cmv_basetable_2_n3
 POSTHOOK: Input: default@cmv_basetable_n6
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(a=[$0])
+HiveProject(cmv_basetable_n6.a=[$0])
   HiveJoin(condition=[=($0, $1)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(a=[$0])
       HiveFilter(condition=[IS NOT NULL($0)])
@@ -334,7 +334,7 @@ POSTHOOK: Input: default@cmv_basetable_n6
 POSTHOOK: Input: default@cmv_mat_view_n6
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(a=[$0])
+HiveProject(cmv_basetable_n6.a=[$0])
   HiveFilter(condition=[<(10.1:DECIMAL(3, 1), $1)])
     HiveTableScan(table=[[default, cmv_mat_view_n6]], table:alias=[default.cmv_mat_view_n6])
 
@@ -566,7 +566,7 @@ POSTHOOK: Input: default@cmv_basetable_n6
 POSTHOOK: Input: default@cmv_mat_view_n6
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(a=[$0])
+HiveProject(cmv_basetable_n6.a=[$0])
   HiveFilter(condition=[<(10.1:DECIMAL(3, 1), $1)])
     HiveTableScan(table=[[default, cmv_mat_view_n6]], table:alias=[default.cmv_mat_view_n6])
 
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_9.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_9.q.out
index 69fc069a499..8210886d201 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_9.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_9.q.out
@@ -125,7 +125,7 @@ POSTHOOK: Input: default@t1
 POSTHOOK: Input: default@t2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(a=[$0], _c1=[$1])
+HiveProject(t1.a=[$0], _c1=[$1])
   HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
 
 PREHOOK: query: delete from t1 where b = 1
@@ -218,14 +218,15 @@ POSTHOOK: Input: default@t1
 POSTHOOK: Input: default@t2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{0}], agg#0=[sum($1)])
-  HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
-    HiveProject(a=[$0], b=[$1])
-      HiveFilter(condition=[IS NOT NULL($0)])
-        HiveTableScan(table=[[default, t1]], table:alias=[t1])
-    HiveProject(a=[$0])
-      HiveFilter(condition=[IS NOT NULL($0)])
-        HiveTableScan(table=[[default, t2]], table:alias=[t2])
+HiveProject(t1.a=[$0], _c1=[$1])
+  HiveAggregate(group=[{0}], agg#0=[sum($1)])
+    HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
+      HiveProject(a=[$0], b=[$1])
+        HiveFilter(condition=[IS NOT NULL($0)])
+          HiveTableScan(table=[[default, t1]], table:alias=[t1])
+      HiveProject(a=[$0])
+        HiveFilter(condition=[IS NOT NULL($0)])
+          HiveTableScan(table=[[default, t2]], table:alias=[t2])
 
 PREHOOK: query: explain cbo
 alter materialized view mat1 rebuild
@@ -244,7 +245,7 @@ POSTHOOK: Input: default@t2
 POSTHOOK: Output: default@mat1
 POSTHOOK: Output: default@mat1
 CBO PLAN:
-HiveProject(a0=[$4], $f1=[CASE(IS NULL($1), $5, IS NULL($5), $1, +($5, $1))], $f2=[CASE(IS NULL($2), $6, +($6, $2))])
+HiveProject(t1.a=[$4], _c1=[CASE(IS NULL($1), $5, IS NULL($5), $1, +($5, $1))], _c2=[CASE(IS NULL($2), $6, +($6, $2))])
   HiveFilter(condition=[OR(AND($3, OR(AND(IS NULL($2), =($6, 0)), AND(=(+($6, $2), 0), IS NOT NULL($2)))), AND(IS NULL($3), OR(AND(IS NULL($2), >($6, 0)), AND(>(+($6, $2), 0), IS NOT NULL($2)))), AND($3, OR(AND(IS NULL($2), >($6, 0)), AND(>(+($6, $2), 0), IS NOT NULL($2)))))])
     HiveJoin(condition=[IS NOT DISTINCT FROM($0, $4)], joinType=[right], algorithm=[none], cost=[not available])
       HiveProject(a=[$0], _c1=[$1], _c2=[$2], $f3=[true])
@@ -697,7 +698,7 @@ POSTHOOK: Input: default@t1
 POSTHOOK: Input: default@t2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(a=[$0], _c1=[$1])
+HiveProject(t1.a=[$0], _c1=[$1])
   HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
 
 PREHOOK: query: select t1.a, sum(t1.b) from t1
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_nulls.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_nulls.q.out
index 93a9cb52e2d..adf42999c5f 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_nulls.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_create_rewrite_nulls.q.out
@@ -116,7 +116,7 @@ POSTHOOK: Output: default@mat1
 POSTHOOK: Output: default@mat1
 Explain
 CBO PLAN:
-HiveProject($f0=[$6], $f1=[$7], $f2=[CASE(IS NULL($2), $8, IS NULL($8), $2, +($8, $2))], $f3=[CASE(IS NULL($3), $9, IS NULL($9), $3, CASE(<($9, $3), $9, $3))], $f4=[CASE(IS NULL($4), $10, IS NULL($10), $4, CASE(>($10, $4), $10, $4))])
+HiveProject(t1.a=[$6], t1.b=[$7], _c2=[CASE(IS NULL($2), $8, IS NULL($8), $2, +($8, $2))], _c3=[CASE(IS NULL($3), $9, IS NULL($9), $3, CASE(<($9, $3), $9, $3))], _c4=[CASE(IS NULL($4), $10, IS NULL($10), $4, CASE(>($10, $4), $10, $4))])
   HiveFilter(condition=[OR($5, IS NULL($5))])
     HiveJoin(condition=[AND(IS NOT DISTINCT FROM($0, $6), IS NOT DISTINCT FROM($1, $7))], joinType=[right], algorithm=[BucketJoin], cost=[not available])
       HiveProject(a=[$0], b=[$1], _c2=[$2], _c3=[$3], _c4=[$4], $f5=[true])
@@ -558,7 +558,7 @@ POSTHOOK: Input: default@t1
 Explain
 CBO PLAN:
 HiveSortLimit(sort0=[$0], sort1=[$1], dir0=[ASC], dir1=[ASC])
-  HiveProject(a=[$0], b=[$1], $f2=[$2], $f3=[$3], $f4=[$4])
+  HiveProject(a=[$0], b=[$1], _c2=[$2], _c3=[$3], _c4=[$4])
     HiveAggregate(group=[{0, 1}], agg#0=[sum($3)], agg#1=[min($3)], agg#2=[max($3)])
       HiveFilter(condition=[>($2, 10:DECIMAL(2, 0))])
         HiveTableScan(table=[[default, t1]], table:alias=[t1])
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_parquet.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_parquet.q.out
index 9562550c0f7..84c858d69f7 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_parquet.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_parquet.q.out
@@ -242,7 +242,7 @@ POSTHOOK: Input: default@emps_parquet_n3
 POSTHOOK: Input: default@mv1_parquet_n2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(deptno=[$1], empid=[$0], name=[$2], salary=[$3], commission=[$4], name1=[$6], locationid=[$7])
+HiveProject(t.deptno=[$1], t.empid=[$0], t.name=[$2], t.salary=[$3], t.commission=[$4], depts_parquet_n2.name=[$6], depts_parquet_n2.locationid=[$7])
   HiveJoin(condition=[=($1, $5)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(empid=[CAST($0):INTEGER NOT NULL], deptno=[$1], name=[$2], salary=[$3], commission=[$4])
       HiveFilter(condition=[AND(>(120, CAST($0):INTEGER NOT NULL), IS NOT NULL($1))])
@@ -315,7 +315,7 @@ POSTHOOK: Input: default@emps_parquet_n3
 POSTHOOK: Input: default@mv1_parquet_n2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(name=[$1], salary=[$2], commission=[$3])
+HiveProject(emps_parquet_n3.name=[$1], emps_parquet_n3.salary=[$2], emps_parquet_n3.commission=[$3])
   HiveFilter(condition=[IS NOT NULL($0)])
     HiveTableScan(table=[[default, mv1_parquet_n2]], table:alias=[default.mv1_parquet_n2])
 
@@ -444,13 +444,14 @@ POSTHOOK: Input: default@emps_parquet_n3
 POSTHOOK: Input: default@mv1_parquet_n2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveUnion(all=[true])
-  HiveProject(empid=[$0], deptno=[$1], name=[$2], salary=[$3], commission=[$4])
-    HiveFilter(condition=[>($0, 120)])
-      HiveTableScan(table=[[default, emps_parquet_n3]], table:alias=[emps_parquet_n3])
-  HiveProject(empid=[CAST($0):INTEGER NOT NULL], deptno=[$1], name=[$2], salary=[$3], commission=[$4])
-    HiveFilter(condition=[>(150, CAST($0):INTEGER NOT NULL)])
-      HiveTableScan(table=[[default, mv1_parquet_n2]], table:alias=[default.mv1_parquet_n2])
+HiveProject(empid=[$0], deptno=[$1], name=[$2], salary=[$3], commission=[$4])
+  HiveUnion(all=[true])
+    HiveProject(empid=[$0], deptno=[$1], name=[$2], salary=[$3], commission=[$4])
+      HiveFilter(condition=[>($0, 120)])
+        HiveTableScan(table=[[default, emps_parquet_n3]], table:alias=[emps_parquet_n3])
+    HiveProject(empid=[CAST($0):INTEGER NOT NULL], deptno=[$1], name=[$2], salary=[$3], commission=[$4])
+      HiveFilter(condition=[>(150, CAST($0):INTEGER NOT NULL)])
+        HiveTableScan(table=[[default, mv1_parquet_n2]], table:alias=[default.mv1_parquet_n2])
 
 PREHOOK: query: select * from emps_parquet_n3 where empid > 120
 union all select * from emps_parquet_n3 where empid < 150
@@ -616,7 +617,8 @@ POSTHOOK: Input: default@emps_parquet_n3
 POSTHOOK: Input: default@mv1_parquet_n2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveTableScan(table=[[default, mv1_parquet_n2]], table:alias=[default.mv1_parquet_n2])
+HiveProject(name=[$0], salary=[$1])
+  HiveTableScan(table=[[default, mv1_parquet_n2]], table:alias=[default.mv1_parquet_n2])
 
 PREHOOK: query: select name, salary from emps_parquet_n3 group by name, salary
 PREHOOK: type: QUERY
@@ -669,8 +671,9 @@ POSTHOOK: Input: default@emps_parquet_n3
 POSTHOOK: Input: default@mv1_parquet_n2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{0}])
-  HiveTableScan(table=[[default, mv1_parquet_n2]], table:alias=[default.mv1_parquet_n2])
+HiveProject(name=[$0])
+  HiveAggregate(group=[{0}])
+    HiveTableScan(table=[[default, mv1_parquet_n2]], table:alias=[default.mv1_parquet_n2])
 
 PREHOOK: query: select name from emps_parquet_n3 group by name
 PREHOOK: type: QUERY
@@ -723,8 +726,9 @@ POSTHOOK: Input: default@emps_parquet_n3
 POSTHOOK: Input: default@mv1_parquet_n2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{0}])
-  HiveTableScan(table=[[default, mv1_parquet_n2]], table:alias=[default.mv1_parquet_n2])
+HiveProject(name=[$0])
+  HiveAggregate(group=[{0}])
+    HiveTableScan(table=[[default, mv1_parquet_n2]], table:alias=[default.mv1_parquet_n2])
 
 PREHOOK: query: select name from emps_parquet_n3 where deptno = 10 group by name
 PREHOOK: type: QUERY
@@ -780,8 +784,9 @@ POSTHOOK: Input: default@emps_parquet_n3
 POSTHOOK: Input: default@mv1_parquet_n2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{0}])
-  HiveTableScan(table=[[default, mv1_parquet_n2]], table:alias=[default.mv1_parquet_n2])
+HiveProject(name=[$0])
+  HiveAggregate(group=[{0}])
+    HiveTableScan(table=[[default, mv1_parquet_n2]], table:alias=[default.mv1_parquet_n2])
 
 PREHOOK: query: select name from emps_parquet_n3 group by name
 PREHOOK: type: QUERY
@@ -1033,8 +1038,9 @@ POSTHOOK: Input: default@emps_parquet_n3
 POSTHOOK: Input: default@mv1_parquet_n2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{0}], agg#0=[sum($3)])
-  HiveTableScan(table=[[default, mv1_parquet_n2]], table:alias=[default.mv1_parquet_n2])
+HiveProject(name=[$0], _c1=[$1])
+  HiveAggregate(group=[{0}], agg#0=[sum($3)])
+    HiveTableScan(table=[[default, mv1_parquet_n2]], table:alias=[default.mv1_parquet_n2])
 
 PREHOOK: query: select name, sum(empid) from emps_parquet_n3 group by name
 PREHOOK: type: QUERY
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_11.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_11.q.out
index b64b90f9cc2..0a9c6c4dd2b 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_11.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_11.q.out
@@ -41,15 +41,16 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{0}])
-  HiveProject($f0=[$0])
-    HiveUnion(all=[true])
-      HiveProject($f0=[CAST(1):INTEGER])
-        HiveFilter(condition=[=($0, 1)])
-          HiveTableScan(table=[[default, t1]], table:alias=[t1])
-      HiveProject($f0=[CAST(2):INTEGER])
-        HiveFilter(condition=[=($0, 2)])
-          HiveTableScan(table=[[default, t1]], table:alias=[t1])
+HiveProject(col0=[$0])
+  HiveAggregate(group=[{0}])
+    HiveProject($f0=[$0])
+      HiveUnion(all=[true])
+        HiveProject($f0=[CAST(1):INTEGER])
+          HiveFilter(condition=[=($0, 1)])
+            HiveTableScan(table=[[default, t1]], table:alias=[t1])
+        HiveProject($f0=[CAST(2):INTEGER])
+          HiveFilter(condition=[=($0, 2)])
+            HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
 PREHOOK: query: explain
 select * from t1 where col0 = 1
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text.q.out
index 8a919308a4e..e9eec4f0c6d 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text.q.out
@@ -43,7 +43,8 @@ POSTHOOK: Input: default@mat1
 POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
+HiveProject(col0=[$0])
+  HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
 
 PREHOOK: query: explain cbo
 select * from t1 where col0 = 1
@@ -60,15 +61,16 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{0}])
-  HiveProject($f0=[$0])
-    HiveUnion(all=[true])
-      HiveProject($f0=[CAST(1):INTEGER])
-        HiveFilter(condition=[=($0, 1)])
-          HiveTableScan(table=[[default, t1]], table:alias=[t1])
-      HiveProject($f0=[CAST(2):INTEGER])
-        HiveFilter(condition=[=($0, 2)])
-          HiveTableScan(table=[[default, t1]], table:alias=[t1])
+HiveProject(col0=[$0])
+  HiveAggregate(group=[{0}])
+    HiveProject($f0=[$0])
+      HiveUnion(all=[true])
+        HiveProject($f0=[CAST(1):INTEGER])
+          HiveFilter(condition=[=($0, 1)])
+            HiveTableScan(table=[[default, t1]], table:alias=[t1])
+        HiveProject($f0=[CAST(2):INTEGER])
+          HiveFilter(condition=[=($0, 2)])
+            HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
 PREHOOK: query: drop materialized view mat1
 PREHOOK: type: DROP_MATERIALIZED_VIEW
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_10.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_10.q.out
index 9a154fae0d3..5181e28d4b7 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_10.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_10.q.out
@@ -34,7 +34,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@emps
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(ename=[$0], birth_epoch_secs=[$1])
+HiveProject(emps.ename=[$0], emps.birth_epoch_secs=[$1])
   HiveFilter(condition=[<=(CAST($1):BIGINT, 1746205503)])
     HiveTableScan(table=[[default, emps]], table:alias=[emps])
 
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_2.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_2.q.out
index de0b25612fa..4dd3fbb4dc0 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_2.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_2.q.out
@@ -33,7 +33,8 @@ POSTHOOK: Input: default@cmv_basetable_n0
 POSTHOOK: Input: default@cmv_mat_view2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveTableScan(table=[[default, cmv_mat_view2]], table:alias=[default.cmv_mat_view2])
+HiveProject(a=[$0], c=[$1])
+  HiveTableScan(table=[[default, cmv_mat_view2]], table:alias=[default.cmv_mat_view2])
 
 PREHOOK: query: alter materialized view cmv_mat_view2 disable rewrite
 PREHOOK: type: ALTER_MATERIALIZED_VIEW_REWRITE
@@ -79,7 +80,8 @@ POSTHOOK: Input: default@cmv_basetable_n0
 POSTHOOK: Input: default@cmv_mat_view2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveTableScan(table=[[default, cmv_mat_view2]], table:alias=[default.cmv_mat_view2])
+HiveProject(a=[$0], c=[$1])
+  HiveTableScan(table=[[default, cmv_mat_view2]], table:alias=[default.cmv_mat_view2])
 
 PREHOOK: query: drop materialized view cmv_mat_view2
 PREHOOK: type: DROP_MATERIALIZED_VIEW
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_3.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_3.q.out
index 9b09f6bbd23..e688639a0f5 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_3.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_3.q.out
@@ -32,7 +32,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject($f0=[CAST(_UTF-16LE'FOO':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"):VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
+HiveProject(t1.col0=[CAST(_UTF-16LE'FOO':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"):VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
   HiveFilter(condition=[=($0, _UTF-16LE'FOO')])
     HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
@@ -49,7 +49,8 @@ POSTHOOK: Input: default@mat1
 POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
+HiveProject(t1.col0=[$0])
+  HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
 
 PREHOOK: query: drop materialized view mat1
 PREHOOK: type: DROP_MATERIALIZED_VIEW
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_4.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_4.q.out
index 469608969fa..977a822cecb 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_4.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_4.q.out
@@ -43,7 +43,8 @@ POSTHOOK: Input: default@mat1
 POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
+HiveProject(t1.col0=[$0])
+  HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
 
 PREHOOK: query: insert into t1(col0) values('bar')
 PREHOOK: type: QUERY
@@ -65,7 +66,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject($f0=[CAST(_UTF-16LE'foo':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"):VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
+HiveProject(t1.col0=[CAST(_UTF-16LE'foo':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"):VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
   HiveFilter(condition=[=($0, _UTF-16LE'foo')])
     HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
@@ -91,7 +92,8 @@ POSTHOOK: Input: default@mat1
 POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
+HiveProject(t1.col0=[$0])
+  HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
 
 PREHOOK: query: drop materialized view mat1
 PREHOOK: type: DROP_MATERIALIZED_VIEW
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_5.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_5.q.out
index 88a17e5591c..288b658c31e 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_5.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_5.q.out
@@ -44,7 +44,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: db1@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject($f0=[CAST(1):INTEGER])
+HiveProject(t1.col0=[CAST(1):INTEGER])
   HiveFilter(condition=[=($0, 1)])
     HiveTableScan(table=[[db1, t1]], table:alias=[t1])
 
@@ -67,7 +67,8 @@ POSTHOOK: Input: db1@mat1
 POSTHOOK: Input: db1@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveTableScan(table=[[db1, mat1]], table:alias=[db1.mat1])
+HiveProject(t1.col0=[$0])
+  HiveTableScan(table=[[db1, mat1]], table:alias=[db1.mat1])
 
 PREHOOK: query: drop materialized view db1.mat1
 PREHOOK: type: DROP_MATERIALIZED_VIEW
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_6.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_6.q.out
index 250493d5846..4692c308ee2 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_6.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_6.q.out
@@ -79,14 +79,15 @@ POSTHOOK: Input: default@t1
 POSTHOOK: Input: default@t2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveSemiJoin(condition=[true], joinType=[semi])
-  HiveProject(col0=[$0])
-    HiveTableScan(table=[[default, t2]], table:alias=[t2])
-  HiveProject($f0=[$0])
-    HiveAggregate(group=[{0}])
-      HiveProject($f0=[true])
-        HiveFilter(condition=[=($0, 3)])
-          HiveTableScan(table=[[default, t1]], table:alias=[t1])
+HiveProject(col0=[$0])
+  HiveSemiJoin(condition=[true], joinType=[semi])
+    HiveProject(col0=[$0])
+      HiveTableScan(table=[[default, t2]], table:alias=[t2])
+    HiveProject($f0=[$0])
+      HiveAggregate(group=[{0}])
+        HiveProject($f0=[true])
+          HiveFilter(condition=[=($0, 3)])
+            HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
 Warning: Shuffle Join MERGEJOIN[14][tables = [$hdt$_0, $hdt$_1]] in Stage 'Reducer 2' is a cross product
 PREHOOK: query: explain cbo
@@ -104,13 +105,14 @@ POSTHOOK: Input: default@t1
 POSTHOOK: Input: default@t2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveSemiJoin(condition=[true], joinType=[semi])
-  HiveProject(col0=[$0])
-    HiveTableScan(table=[[default, t2]], table:alias=[t2])
-  HiveProject($f0=[$0])
-    HiveAggregate(group=[{0}])
-      HiveProject($f0=[true])
-        HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
+HiveProject(col0=[$0])
+  HiveSemiJoin(condition=[true], joinType=[semi])
+    HiveProject(col0=[$0])
+      HiveTableScan(table=[[default, t2]], table:alias=[t2])
+    HiveProject($f0=[$0])
+      HiveAggregate(group=[{0}])
+        HiveProject($f0=[true])
+          HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
 
 PREHOOK: query: explain cbo
 select col0 from t2 where col0 in (select col0 from t1 where col0 = 1 union select col0 from t1 where col0 = 2)
@@ -127,13 +129,14 @@ POSTHOOK: Input: default@t1
 POSTHOOK: Input: default@t2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveSemiJoin(condition=[=($0, $1)], joinType=[semi])
-  HiveProject(col0=[$0])
-    HiveFilter(condition=[IS NOT NULL($0)])
-      HiveTableScan(table=[[default, t2]], table:alias=[t2])
-  HiveProject(col0=[$0])
-    HiveFilter(condition=[IS NOT NULL($0)])
-      HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
+HiveProject(col0=[$0])
+  HiveSemiJoin(condition=[=($0, $1)], joinType=[semi])
+    HiveProject(col0=[$0])
+      HiveFilter(condition=[IS NOT NULL($0)])
+        HiveTableScan(table=[[default, t2]], table:alias=[t2])
+    HiveProject(col0=[$0])
+      HiveFilter(condition=[IS NOT NULL($0)])
+        HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
 
 PREHOOK: query: drop materialized view mat1
 PREHOOK: type: DROP_MATERIALIZED_VIEW
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_7.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_7.q.out
index add3db7fc08..16f3bb56329 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_7.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_7.q.out
@@ -50,7 +50,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject($f0=[CAST(20):INTEGER])
+HiveProject(col0=[CAST(20):INTEGER])
   HiveFilter(condition=[=($0, 20)])
     HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_8.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_8.q.out
index e003990db64..13c6b73b092 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_8.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_8.q.out
@@ -59,7 +59,8 @@ POSTHOOK: Input: default@mat2
 POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveTableScan(table=[[default, mat2]], table:alias=[default.mat2])
+HiveProject(col0=[$0])
+  HiveTableScan(table=[[default, mat2]], table:alias=[default.mat2])
 
 PREHOOK: query: explain cbo
 select col0 from (
@@ -136,13 +137,14 @@ POSTHOOK: Input: default@mat2
 POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveSemiJoin(condition=[=($0, $1)], joinType=[semi])
-  HiveProject(col0=[$0])
-    HiveFilter(condition=[IS NOT NULL($0)])
-      HiveTableScan(table=[[default, t1]], table:alias=[t1])
-  HiveProject(col0=[$0])
-    HiveFilter(condition=[IS NOT NULL($0)])
-      HiveTableScan(table=[[default, mat2]], table:alias=[default.mat2])
+HiveProject(col0=[$0])
+  HiveSemiJoin(condition=[=($0, $1)], joinType=[semi])
+    HiveProject(col0=[$0])
+      HiveFilter(condition=[IS NOT NULL($0)])
+        HiveTableScan(table=[[default, t1]], table:alias=[t1])
+    HiveProject(col0=[$0])
+      HiveFilter(condition=[IS NOT NULL($0)])
+        HiveTableScan(table=[[default, mat2]], table:alias=[default.mat2])
 
 PREHOOK: query: drop materialized view mat2
 PREHOOK: type: DROP_MATERIALIZED_VIEW
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_9.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_9.q.out
index 52ce097a039..39488c24bea 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_9.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_by_text_9.q.out
@@ -47,13 +47,14 @@ POSTHOOK: Input: default@t1
 POSTHOOK: Input: default@t2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveSemiJoin(condition=[=($0, $1)], joinType=[semi])
-  HiveProject(col0=[$0])
-    HiveFilter(condition=[IS NOT NULL($0)])
-      HiveTableScan(table=[[default, t2]], table:alias=[t2])
-  HiveProject(col0=[$0])
-    HiveFilter(condition=[IS NOT NULL($0)])
-      HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
+HiveProject(col0=[$0])
+  HiveSemiJoin(condition=[=($0, $1)], joinType=[semi])
+    HiveProject(col0=[$0])
+      HiveFilter(condition=[IS NOT NULL($0)])
+        HiveTableScan(table=[[default, t2]], table:alias=[t2])
+    HiveProject(col0=[$0])
+      HiveFilter(condition=[IS NOT NULL($0)])
+        HiveTableScan(table=[[default, mat1]], table:alias=[default.mat1])
 
 PREHOOK: query: insert into t1(col0) values (2)
 PREHOOK: type: QUERY
@@ -77,16 +78,17 @@ POSTHOOK: Input: default@t1
 POSTHOOK: Input: default@t2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveSemiJoin(condition=[=($0, $1)], joinType=[semi])
-  HiveProject(col0=[$0])
-    HiveFilter(condition=[IN($0, 1, 2)])
-      HiveTableScan(table=[[default, t2]], table:alias=[t2])
-  HiveProject($f0=[$0])
-    HiveUnion(all=[true])
-      HiveProject($f0=[CAST(1):INTEGER])
-        HiveFilter(condition=[=($0, 1)])
-          HiveTableScan(table=[[default, t1]], table:alias=[t1])
-      HiveProject($f0=[CAST(2):INTEGER])
-        HiveFilter(condition=[=($0, 2)])
-          HiveTableScan(table=[[default, t1]], table:alias=[t1])
+HiveProject(col0=[$0])
+  HiveSemiJoin(condition=[=($0, $1)], joinType=[semi])
+    HiveProject(col0=[$0])
+      HiveFilter(condition=[IN($0, 1, 2)])
+        HiveTableScan(table=[[default, t2]], table:alias=[t2])
+    HiveProject($f0=[$0])
+      HiveUnion(all=[true])
+        HiveProject($f0=[CAST(1):INTEGER])
+          HiveFilter(condition=[=($0, 1)])
+            HiveTableScan(table=[[default, t1]], table:alias=[t1])
+        HiveProject($f0=[CAST(2):INTEGER])
+          HiveFilter(condition=[=($0, 2)])
+            HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_in_between.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_in_between.q.out
index 9055677651c..51c263cbe4c 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_in_between.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_in_between.q.out
@@ -157,7 +157,8 @@ POSTHOOK: Input: in_pred@census_pop
 POSTHOOK: Input: in_pred@mv2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveTableScan(table=[[in_pred, mv2]], table:alias=[in_pred.mv2])
+HiveProject(state=[$0], year=[$1], _c2=[$2])
+  HiveTableScan(table=[[in_pred, mv2]], table:alias=[in_pred.mv2])
 
 PREHOOK: query: explain cbo
 select state, year, sum(population) from census_pop where year = 2010 group by state, year
@@ -172,7 +173,7 @@ POSTHOOK: Input: in_pred@census_pop
 POSTHOOK: Input: in_pred@mv2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(state=[$0], year=[CAST(2010):INTEGER], _o__c2=[$1])
+HiveProject(state=[$0], year=[CAST(2010):INTEGER], _c2=[$1])
   HiveAggregate(group=[{0}], agg#0=[sum($2)])
     HiveFilter(condition=[=(2010, $1)])
       HiveTableScan(table=[[in_pred, mv2]], table:alias=[in_pred.mv2])
@@ -190,7 +191,7 @@ POSTHOOK: Input: in_pred@census_pop
 POSTHOOK: Input: in_pred@mv2
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(state=[$0], year=[CAST(2010):INTEGER], _o__c2=[$1])
+HiveProject(state=[$0], year=[CAST(2010):INTEGER], _c2=[$1])
   HiveAggregate(group=[{0}], agg#0=[sum($2)])
     HiveFilter(condition=[=(2010, $1)])
       HiveTableScan(table=[[in_pred, mv2]], table:alias=[in_pred.mv2])
@@ -274,7 +275,8 @@ POSTHOOK: Input: expr9@mv3
 POSTHOOK: Input: expr9@sales
 #### A masked pattern was here ####
 CBO PLAN:
-HiveTableScan(table=[[expr9, mv3]], table:alias=[expr9.mv3])
+HiveProject(sales.prod_id=[$0], sales.cust_id=[$1], sales.store_id=[$2], sales.sale_date=[$3], sales.qty=[$4], sales.amt=[$5], sales.descr=[$6])
+  HiveTableScan(table=[[expr9, mv3]], table:alias=[expr9.mv3])
 
 PREHOOK: query: explain cbo
 select  * from sales where cust_id between 1 and 20 and prod_id < 31
@@ -289,8 +291,9 @@ POSTHOOK: Input: expr9@mv3
 POSTHOOK: Input: expr9@sales
 #### A masked pattern was here ####
 CBO PLAN:
-HiveFilter(condition=[>=(20, $1)])
-  HiveTableScan(table=[[expr9, mv3]], table:alias=[expr9.mv3])
+HiveProject(sales.prod_id=[$0], sales.cust_id=[$1], sales.store_id=[$2], sales.sale_date=[$3], sales.qty=[$4], sales.amt=[$5], sales.descr=[$6])
+  HiveFilter(condition=[>=(20, $1)])
+    HiveTableScan(table=[[expr9, mv3]], table:alias=[expr9.mv3])
 
 PREHOOK: query: drop materialized view mv3
 PREHOOK: type: DROP_MATERIALIZED_VIEW
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_ssb_grouping_sets.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_ssb_grouping_sets.q.out
index 93d94969447..16f331beb00 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_ssb_grouping_sets.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_ssb_grouping_sets.q.out
@@ -695,9 +695,10 @@ POSTHOOK: Input: default@lineorder_n3
 POSTHOOK: Input: default@ssb_mv_n3
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{}], agg#0=[sum($16)])
-  HiveFilter(condition=[AND(<($8, 2.5E1), =(CAST($18):BIGINT NOT NULL, 29247), BETWEEN(false, $7, 1E0:DOUBLE, 3E0:DOUBLE), =($4, 1993))])
-    HiveTableScan(table=[[default, ssb_mv_n3]], table:alias=[default.ssb_mv_n3])
+HiveProject(revenue=[$0])
+  HiveAggregate(group=[{}], agg#0=[sum($16)])
+    HiveFilter(condition=[AND(<($8, 2.5E1), =(CAST($18):BIGINT NOT NULL, 29247), BETWEEN(false, $7, 1E0:DOUBLE, 3E0:DOUBLE), =($4, 1993))])
+      HiveTableScan(table=[[default, ssb_mv_n3]], table:alias=[default.ssb_mv_n3])
 
 PREHOOK: query: explain cbo
 select 
@@ -730,9 +731,10 @@ POSTHOOK: Input: default@lineorder_n3
 POSTHOOK: Input: default@ssb_mv_n3
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{}], agg#0=[sum($16)])
-  HiveFilter(condition=[AND(=(CAST($18):BIGINT NOT NULL, 29247), BETWEEN(false, $8, 2.6E1:DOUBLE, 3.5E1:DOUBLE), BETWEEN(false, $7, 4E0:DOUBLE, 6E0:DOUBLE), =($6, 199401))])
-    HiveTableScan(table=[[default, ssb_mv_n3]], table:alias=[default.ssb_mv_n3])
+HiveProject(revenue=[$0])
+  HiveAggregate(group=[{}], agg#0=[sum($16)])
+    HiveFilter(condition=[AND(=(CAST($18):BIGINT NOT NULL, 29247), BETWEEN(false, $8, 2.6E1:DOUBLE, 3.5E1:DOUBLE), BETWEEN(false, $7, 4E0:DOUBLE, 6E0:DOUBLE), =($6, 199401))])
+      HiveTableScan(table=[[default, ssb_mv_n3]], table:alias=[default.ssb_mv_n3])
 
 PREHOOK: query: explain cbo
 select 
@@ -767,9 +769,10 @@ POSTHOOK: Input: default@lineorder_n3
 POSTHOOK: Input: default@ssb_mv_n3
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{}], agg#0=[sum($16)])
-  HiveFilter(condition=[AND(=(CAST($18):BIGINT NOT NULL, 29247), BETWEEN(false, $8, 2.6E1:DOUBLE, 3.5E1:DOUBLE), BETWEEN(false, $7, 5E0:DOUBLE, 7E0:DOUBLE), =($4, 1994), =($3, 6))])
-    HiveTableScan(table=[[default, ssb_mv_n3]], table:alias=[default.ssb_mv_n3])
+HiveProject(revenue=[$0])
+  HiveAggregate(group=[{}], agg#0=[sum($16)])
+    HiveFilter(condition=[AND(=(CAST($18):BIGINT NOT NULL, 29247), BETWEEN(false, $8, 2.6E1:DOUBLE, 3.5E1:DOUBLE), BETWEEN(false, $7, 5E0:DOUBLE, 7E0:DOUBLE), =($4, 1994), =($3, 6))])
+      HiveTableScan(table=[[default, ssb_mv_n3]], table:alias=[default.ssb_mv_n3])
 
 PREHOOK: query: explain cbo
 select 
@@ -975,7 +978,7 @@ POSTHOOK: Input: default@supplier_n3
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortLimit(sort0=[$2], sort1=[$3], dir0=[ASC], dir1=[DESC])
-  HiveProject(c_nation=[$0], s_nation=[$2], d_year=[$1], $f3=[$3])
+  HiveProject(c_nation=[$0], s_nation=[$2], d_year=[$1], lo_revenue=[$3])
     HiveAggregate(group=[{1, 4, 13}], agg#0=[sum($15)])
       HiveFilter(condition=[AND(=(CAST($18):BIGINT NOT NULL, 2496), BETWEEN(false, $4, 1992, 1997), =($2, _UTF-16LE'ASIA'), =($14, _UTF-16LE'ASIA'))])
         HiveTableScan(table=[[default, ssb_mv_n3]], table:alias=[default.ssb_mv_n3])
@@ -1028,7 +1031,7 @@ POSTHOOK: Input: default@supplier_n3
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortLimit(sort0=[$2], sort1=[$3], dir0=[ASC], dir1=[DESC])
-  HiveProject(c_city=[$0], s_city=[$2], d_year=[$1], $f3=[$3])
+  HiveProject(c_city=[$0], s_city=[$2], d_year=[$1], lo_revenue=[$3])
     HiveAggregate(group=[{0, 4, 12}], agg#0=[sum($15)])
       HiveFilter(condition=[AND(=(CAST($18):BIGINT NOT NULL, 2496), BETWEEN(false, $4, 1992, 1997), =($1, _UTF-16LE'UNITED STATES'), =($13, _UTF-16LE'UNITED STATES'))])
         HiveTableScan(table=[[default, ssb_mv_n3]], table:alias=[default.ssb_mv_n3])
@@ -1081,7 +1084,7 @@ POSTHOOK: Input: default@supplier_n3
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortLimit(sort0=[$2], sort1=[$3], dir0=[ASC], dir1=[DESC])
-  HiveProject(c_city=[$0], s_city=[$2], d_year=[$1], $f3=[$3])
+  HiveProject(c_city=[$0], s_city=[$2], d_year=[$1], lo_revenue=[$3])
     HiveAggregate(group=[{0, 4, 12}], agg#0=[sum($15)])
       HiveFilter(condition=[AND(=(CAST($18):BIGINT NOT NULL, 2496), BETWEEN(false, $4, 1992, 1997), IN($0, _UTF-16LE'UNITED KI1':VARCHAR(2147483647) CHARACTER SET "UTF-16LE", _UTF-16LE'UNITED KI5':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"), IN($12, _UTF-16LE'UNITED KI1':VARCHAR(2147483647) CHARACTER SET "UTF-16LE", _UTF-16LE'UNITED KI5':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"))])
         HiveTableScan(table=[[default, ssb_mv_n3]], table:alias=[default.ssb_mv_n3])
@@ -1134,7 +1137,7 @@ POSTHOOK: Input: default@supplier_n3
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortLimit(sort0=[$2], sort1=[$3], dir0=[ASC], dir1=[DESC])
-  HiveProject(c_city=[$0], s_city=[$2], d_year=[$1], $f3=[$3])
+  HiveProject(c_city=[$0], s_city=[$2], d_year=[$1], lo_revenue=[$3])
     HiveAggregate(group=[{0, 4, 12}], agg#0=[sum($15)])
       HiveFilter(condition=[AND(=(CAST($18):BIGINT NOT NULL, 2496), =($5, _UTF-16LE'Dec1997'), IN($0, _UTF-16LE'UNITED KI1':VARCHAR(2147483647) CHARACTER SET "UTF-16LE", _UTF-16LE'UNITED KI5':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"), IN($12, _UTF-16LE'UNITED KI1':VARCHAR(2147483647) CHARACTER SET "UTF-16LE", _UTF-16LE'UNITED KI5':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"))])
         HiveTableScan(table=[[default, ssb_mv_n3]], table:alias=[default.ssb_mv_n3])
@@ -1193,7 +1196,7 @@ POSTHOOK: Input: default@supplier_n3
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortLimit(sort0=[$0], sort1=[$1], dir0=[ASC], dir1=[ASC])
-  HiveProject(d_year=[$1], c_nation=[$0], $f2=[$2])
+  HiveProject(d_year=[$1], c_nation=[$0], profit=[$2])
     HiveAggregate(group=[{1, 4}], agg#0=[sum($17)])
       HiveFilter(condition=[AND(=(CAST($18):BIGINT NOT NULL, 2496), =($2, _UTF-16LE'AMERICA'), =($14, _UTF-16LE'AMERICA'), IN($11, _UTF-16LE'MFGR#1':VARCHAR(2147483647) CHARACTER SET "UTF-16LE", _UTF-16LE'MFGR#2':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"))])
         HiveTableScan(table=[[default, ssb_mv_n3]], table:alias=[default.ssb_mv_n3])
@@ -1254,7 +1257,7 @@ POSTHOOK: Input: default@supplier_n3
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortLimit(sort0=[$0], sort1=[$1], sort2=[$2], dir0=[ASC], dir1=[ASC], dir2=[ASC])
-  HiveProject(d_year=[$0], s_nation=[$2], p_category=[$1], $f3=[$3])
+  HiveProject(d_year=[$0], s_nation=[$2], p_category=[$1], profit=[$3])
     HiveAggregate(group=[{4, 10, 13}], agg#0=[sum($17)])
       HiveFilter(condition=[AND(=(CAST($18):BIGINT NOT NULL, 2496), =($2, _UTF-16LE'AMERICA'), =($14, _UTF-16LE'AMERICA'), IN($4, 1997, 1998), IN($11, _UTF-16LE'MFGR#1':VARCHAR(2147483647) CHARACTER SET "UTF-16LE", _UTF-16LE'MFGR#2':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"))])
         HiveTableScan(table=[[default, ssb_mv_n3]], table:alias=[default.ssb_mv_n3])
@@ -1315,7 +1318,7 @@ POSTHOOK: Input: default@supplier_n3
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortLimit(sort0=[$0], sort1=[$1], sort2=[$2], dir0=[ASC], dir1=[ASC], dir2=[ASC])
-  HiveProject(d_year=[$0], s_city=[$2], p_brand1=[$1], $f3=[$3])
+  HiveProject(d_year=[$0], s_city=[$2], p_brand1=[$1], profit=[$3])
     HiveAggregate(group=[{4, 9, 12}], agg#0=[sum($17)])
       HiveFilter(condition=[AND(=(CAST($18):BIGINT NOT NULL, 2496), =($2, _UTF-16LE'AMERICA'), =($10, _UTF-16LE'MFGR#14'), =($13, _UTF-16LE'UNITED STATES'), IN($4, 1997, 1998))])
         HiveTableScan(table=[[default, ssb_mv_n3]], table:alias=[default.ssb_mv_n3])
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_ssb_grouping_sets_2.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_ssb_grouping_sets_2.q.out
index 10dfb636857..7d4a3dd58be 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_ssb_grouping_sets_2.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_ssb_grouping_sets_2.q.out
@@ -666,7 +666,7 @@ POSTHOOK: Input: default@supplier_n4
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortLimit(sort0=[$1], sort1=[$2], dir0=[ASC], dir1=[ASC])
-  HiveProject($f2=[$2], d_year=[$1], p_brand1=[$0])
+  HiveProject(lo_revenue=[$2], d_year=[$1], p_brand1=[$0])
     HiveAggregate(group=[{0, 7}], agg#0=[sum($9)])
       HiveFilter(condition=[AND(=(CAST($8):BIGINT NOT NULL, 0), =($1, _UTF-16LE'MFGR#12'), =($4, _UTF-16LE'AMERICA'))])
         HiveTableScan(table=[[default, ssb_mv_n4]], table:alias=[default.ssb_mv_n4])
@@ -717,7 +717,7 @@ POSTHOOK: Input: default@supplier_n4
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortLimit(sort0=[$1], sort1=[$2], dir0=[ASC], dir1=[ASC])
-  HiveProject($f2=[$2], d_year=[$1], p_brand1=[$0])
+  HiveProject(lo_revenue=[$2], d_year=[$1], p_brand1=[$0])
     HiveAggregate(group=[{0, 7}], agg#0=[sum($9)])
       HiveFilter(condition=[AND(=(CAST($8):BIGINT NOT NULL, 0), BETWEEN(false, $0, _UTF-16LE'MFGR#2221':VARCHAR(2147483647) CHARACTER SET "UTF-16LE", _UTF-16LE'MFGR#2228':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"), =($4, _UTF-16LE'ASIA'))])
         HiveTableScan(table=[[default, ssb_mv_n4]], table:alias=[default.ssb_mv_n4])
diff --git a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_window.q.out b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_window.q.out
index 88856fad63e..47204ecbb3e 100644
--- a/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_window.q.out
+++ b/ql/src/test/results/clientpositive/llap/materialized_view_rewrite_window.q.out
@@ -84,15 +84,16 @@ POSTHOOK: Input: arc_view@tv_view_data
 POSTHOOK: Input: arc_view@wealth
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{2}], agg#0=[max($1)])
-  HiveJoin(condition=[=($3, $0)], joinType=[inner], algorithm=[none], cost=[not available])
-    HiveProject(watches=[$2])
-      HiveFilter(condition=[IS NOT NULL($2)])
-        HiveTableScan(table=[[arc_view, wealth]], table:alias=[t2])
-    HiveProject(total_views=[$1], quartile=[$2], program=[$0])
-      HiveFilter(condition=[IS NOT NULL($0)])
-        HiveProject(program=[$0], total_views=[$1], _o__col7=[sum(CAST(1.5:DECIMAL(2, 1)):DECIMAL(9, 4)) OVER (PARTITION BY 0 ORDER BY $1 NULLS LAST)])
-          HiveTableScan(table=[[arc_view, tv_view_data]], table:alias=[tv_view_data])
+HiveProject(t.quartile=[$0], total=[$1])
+  HiveAggregate(group=[{2}], agg#0=[max($1)])
+    HiveJoin(condition=[=($3, $0)], joinType=[inner], algorithm=[none], cost=[not available])
+      HiveProject(watches=[$2])
+        HiveFilter(condition=[IS NOT NULL($2)])
+          HiveTableScan(table=[[arc_view, wealth]], table:alias=[t2])
+      HiveProject(total_views=[$1], quartile=[$2], program=[$0])
+        HiveFilter(condition=[IS NOT NULL($0)])
+          HiveProject(program=[$0], total_views=[$1], _o__col7=[sum(CAST(1.5:DECIMAL(2, 1)):DECIMAL(9, 4)) OVER (PARTITION BY 0 ORDER BY $1 NULLS LAST)])
+            HiveTableScan(table=[[arc_view, tv_view_data]], table:alias=[tv_view_data])
 
 PREHOOK: query: create materialized view mv_tv_view_data_av1 stored as orc TBLPROPERTIES ('transactional'='true') as
 select
@@ -168,7 +169,7 @@ POSTHOOK: Input: arc_view@wealth
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortLimit(sort0=[$0], dir0=[ASC])
-  HiveProject(quartile=[$0], total=[$1])
+  HiveProject(t.quartile=[$0], total=[$1])
     HiveTableScan(table=[[arc_view, mv_tv_view_data_av1]], table:alias=[arc_view.mv_tv_view_data_av1])
 
 PREHOOK: query: select
@@ -478,7 +479,7 @@ POSTHOOK: Input: arc_view@wealth
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortLimit(sort0=[$0], dir0=[ASC])
-  HiveProject(quartile=[$0], total=[$1])
+  HiveProject(t.quartile=[$0], total=[$1])
     HiveTableScan(table=[[arc_view, mv_tv_view_data_av1]], table:alias=[arc_view.mv_tv_view_data_av1])
 
 PREHOOK: query: select
@@ -789,7 +790,7 @@ POSTHOOK: Input: arc_view@wealth
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortLimit(sort0=[$0], dir0=[ASC])
-  HiveProject(quartile=[$0], total=[$1])
+  HiveProject(t.quartile=[$0], total=[$1])
     HiveTableScan(table=[[arc_view, mv_tv_view_data_av1]], table:alias=[arc_view.mv_tv_view_data_av1])
 
 PREHOOK: query: select
diff --git a/ql/src/test/results/clientpositive/llap/metadataonly1.q.out b/ql/src/test/results/clientpositive/llap/metadataonly1.q.out
index 795eecb5b41..6e72ecc7d68 100644
--- a/ql/src/test/results/clientpositive/llap/metadataonly1.q.out
+++ b/ql/src/test/results/clientpositive/llap/metadataonly1.q.out
@@ -14,7 +14,7 @@ POSTHOOK: query: explain extended select max(ds) from TEST1_n12
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@test1_n12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT MAX(`ds`) AS `$f0`
+OPTIMIZED SQL: SELECT MAX(`ds`) AS `_c0`
 FROM `default`.`test1_n12`
 STAGE DEPENDENCIES:
   Stage-1 is a root stage
@@ -121,7 +121,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@test1_n12
 POSTHOOK: Input: default@test1_n12@ds=1
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT MAX(`ds`) AS `$f0`
+OPTIMIZED SQL: SELECT MAX(`ds`) AS `_c0`
 FROM `default`.`test1_n12`
 STAGE DEPENDENCIES:
   Stage-1 is a root stage
@@ -263,7 +263,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@test1_n12
 POSTHOOK: Input: default@test1_n12@ds=1
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(DISTINCT `ds`) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(DISTINCT `ds`) AS `_c0`
 FROM `default`.`test1_n12`
 STAGE DEPENDENCIES:
   Stage-1 is a root stage
@@ -406,7 +406,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@test1_n12
 POSTHOOK: Input: default@test1_n12@ds=1
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(`ds`) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(`ds`) AS `_c0`
 FROM `default`.`test1_n12`
 STAGE DEPENDENCIES:
   Stage-1 is a root stage
@@ -560,7 +560,7 @@ POSTHOOK: Input: default@test1_n12
 POSTHOOK: Input: default@test1_n12@ds=1
 POSTHOOK: Input: default@test1_n12@ds=2
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM (SELECT `ds`
 FROM `default`.`test1_n12`
 WHERE `ds` IS NOT NULL) AS `t0`
@@ -950,7 +950,7 @@ POSTHOOK: Input: default@test2_n8@ds=1/hr=1
 POSTHOOK: Input: default@test2_n8@ds=1/hr=2
 POSTHOOK: Input: default@test2_n8@ds=1/hr=3
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `ds`, COUNT(DISTINCT `hr`) AS `$f1`
+OPTIMIZED SQL: SELECT `ds`, COUNT(DISTINCT `hr`) AS `_c1`
 FROM `default`.`test2_n8`
 GROUP BY `ds`
 STAGE DEPENDENCIES:
@@ -1180,7 +1180,7 @@ POSTHOOK: Input: default@test2_n8@ds=1/hr=1
 POSTHOOK: Input: default@test2_n8@ds=1/hr=2
 POSTHOOK: Input: default@test2_n8@ds=1/hr=3
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `ds`, COUNT(`hr`) AS `$f1`
+OPTIMIZED SQL: SELECT `ds`, COUNT(`hr`) AS `_c1`
 FROM `default`.`test2_n8`
 GROUP BY `ds`
 STAGE DEPENDENCIES:
@@ -1410,7 +1410,7 @@ POSTHOOK: Input: default@test1_n12
 POSTHOOK: Input: default@test1_n12@ds=1
 POSTHOOK: Input: default@test1_n12@ds=2
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT MAX(`ds`) AS `$f0`
+OPTIMIZED SQL: SELECT MAX(`ds`) AS `_c0`
 FROM `default`.`test1_n12`
 STAGE DEPENDENCIES:
   Stage-1 is a root stage
@@ -1648,7 +1648,7 @@ POSTHOOK: Input: default@test2_n8@ds=1/hr=1
 POSTHOOK: Input: default@test2_n8@ds=1/hr=2
 POSTHOOK: Input: default@test2_n8@ds=1/hr=3
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `ds`, COUNT(DISTINCT `hr`) AS `$f1`
+OPTIMIZED SQL: SELECT `ds`, COUNT(DISTINCT `hr`) AS `_c1`
 FROM `default`.`test2_n8`
 GROUP BY `ds`
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/multi_count_distinct.q.out b/ql/src/test/results/clientpositive/llap/multi_count_distinct.q.out
index 1e55540856c..321baab7243 100644
--- a/ql/src/test/results/clientpositive/llap/multi_count_distinct.q.out
+++ b/ql/src/test/results/clientpositive/llap/multi_count_distinct.q.out
@@ -424,7 +424,7 @@ POSTHOOK: query: explain extended select count (distinct c0), count(distinct c1)
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@test_count
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(`$f0`) AS `$f0`, COUNT(`$f1`) AS `$f1`, COUNT(`$f2`) AS `$f2`, COUNT(`$f3`) AS `$f3`, COUNT(`$f4`) AS `$f4`, COUNT(`$f5`) AS `$f5`, COUNT(`$f6`) AS `$f6`, COUNT(`$f7`) AS `$f7`, COUNT(`$f8`) AS `$f8`, COUNT(`$f9`) AS `$f9`, COUNT(`$f10`) AS `$f10`, COUNT(`$f11`) AS `$f11`, COUNT(`$f12`) AS `$f12`, COUNT(`$f13`) AS `$f13`, COUNT(`$f14`) AS `$f14`, COUNT(`$f15`) AS `$f15`, COUNT(`$f16`) AS `$f16`, COUNT(`$f17`) AS `$f17`, COUNT(`$f18`) AS `$f18`, COUNT(`$f19`) A [...]
+OPTIMIZED SQL: SELECT COUNT(`$f0`) AS `_c0`, COUNT(`$f1`) AS `_c1`, COUNT(`$f2`) AS `_c2`, COUNT(`$f3`) AS `_c3`, COUNT(`$f4`) AS `_c4`, COUNT(`$f5`) AS `_c5`, COUNT(`$f6`) AS `_c6`, COUNT(`$f7`) AS `_c7`, COUNT(`$f8`) AS `_c8`, COUNT(`$f9`) AS `_c9`, COUNT(`$f10`) AS `_c10`, COUNT(`$f11`) AS `_c11`, COUNT(`$f12`) AS `_c12`, COUNT(`$f13`) AS `_c13`, COUNT(`$f14`) AS `_c14`, COUNT(`$f15`) AS `_c15`, COUNT(`$f16`) AS `_c16`, COUNT(`$f17`) AS `_c17`, COUNT(`$f18`) AS `_c18`, COUNT(`$f19`) A [...]
 FROM (SELECT CASE WHEN GROUPING__ID() = 4294967295 AND `c0` IS NOT NULL THEN 1 ELSE NULL END AS `$f0`, CASE WHEN GROUPING__ID() = 6442450943 AND `c1` IS NOT NULL THEN 1 ELSE NULL END AS `$f1`, CASE WHEN GROUPING__ID() = 7516192767 AND `c2` IS NOT NULL THEN 1 ELSE NULL END AS `$f2`, CASE WHEN GROUPING__ID() = 8053063679 AND `c3` IS NOT NULL THEN 1 ELSE NULL END AS `$f3`, CASE WHEN GROUPING__ID() = 8321499135 AND `c4` IS NOT NULL THEN 1 ELSE NULL END AS `$f4`, CASE WHEN GROUPING__ID() = 84 [...]
 FROM `default`.`test_count`
 GROUP BY GROUPING SETS(`c0`, `c1`, `c2`, `c3`, `c4`, `c5`, `c6`, `c7`, `c8`, `c9`, `c10`, `c11`, `c12`, `c13`, `c14`, `c15`, `c16`, `c17`, `c18`, `c19`, `c20`, `c21`, `c22`, `c23`, `c24`, `c25`, `c26`, `c27`, `c28`, `c29`, `c30`, `c31`, `c32`)) AS `t1`
@@ -642,7 +642,7 @@ POSTHOOK: query: explain extended select count (distinct c0), count(distinct c1)
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@test_count
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(DISTINCT `c0`) AS `_o__c0`, COUNT(DISTINCT `c1`) AS `_o__c1`, COUNT(DISTINCT `c2`) AS `_o__c2`, COUNT(DISTINCT `c3`) AS `_o__c3`, COUNT(DISTINCT `c4`) AS `_o__c4`, COUNT(DISTINCT `c5`) AS `_o__c5`, COUNT(DISTINCT `c6`) AS `_o__c6`, COUNT(DISTINCT `c7`) AS `_o__c7`, COUNT(DISTINCT `c8`) AS `_o__c8`, COUNT(DISTINCT `c9`) AS `_o__c9`, COUNT(DISTINCT `c10`) AS `_o__c10`, COUNT(DISTINCT `c11`) AS `_o__c11`, COUNT(DISTINCT `c12`) AS `_o__c12`, COUNT(DISTINCT `c13`)  [...]
+OPTIMIZED SQL: SELECT COUNT(DISTINCT `c0`) AS `_c0`, COUNT(DISTINCT `c1`) AS `_c1`, COUNT(DISTINCT `c2`) AS `_c2`, COUNT(DISTINCT `c3`) AS `_c3`, COUNT(DISTINCT `c4`) AS `_c4`, COUNT(DISTINCT `c5`) AS `_c5`, COUNT(DISTINCT `c6`) AS `_c6`, COUNT(DISTINCT `c7`) AS `_c7`, COUNT(DISTINCT `c8`) AS `_c8`, COUNT(DISTINCT `c9`) AS `_c9`, COUNT(DISTINCT `c10`) AS `_c10`, COUNT(DISTINCT `c11`) AS `_c11`, COUNT(DISTINCT `c12`) AS `_c12`, COUNT(DISTINCT `c13`) AS `_c13`, COUNT(DISTINCT `c14`) AS `_c [...]
 FROM `default`.`test_count`
 STAGE DEPENDENCIES:
   Stage-1 is a root stage
diff --git a/ql/src/test/results/clientpositive/llap/multi_count_distinct_null.q.out b/ql/src/test/results/clientpositive/llap/multi_count_distinct_null.q.out
index 20f6ca653eb..38d7f628de0 100644
--- a/ql/src/test/results/clientpositive/llap/multi_count_distinct_null.q.out
+++ b/ql/src/test/results/clientpositive/llap/multi_count_distinct_null.q.out
@@ -23,11 +23,12 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@employee
 POSTHOOK: Output: hdfs://### HDFS PATH ###
 CBO PLAN:
-HiveAggregate(group=[{}], agg#0=[count($0)], agg#1=[count($1)])
-  HiveProject($f0=[CASE(=($2, 1), 1, null:INTEGER)], $f1=[null:INTEGER])
-    HiveAggregate(group=[{0, 1}], groups=[[{0}, {1}]], GROUPING__ID=[GROUPING__ID()])
-      HiveProject($f0=[true], $f1=[true])
-        HiveTableScan(table=[[default, employee]], table:alias=[employee])
+HiveProject(_c0=[$0], _c1=[$1])
+  HiveAggregate(group=[{}], agg#0=[count($0)], agg#1=[count($1)])
+    HiveProject($f0=[CASE(=($2, 1), 1, null:INTEGER)], $f1=[null:INTEGER])
+      HiveAggregate(group=[{0, 1}], groups=[[{0}, {1}]], GROUPING__ID=[GROUPING__ID()])
+        HiveProject($f0=[true], $f1=[true])
+          HiveTableScan(table=[[default, employee]], table:alias=[employee])
 
 PREHOOK: query: select count(distinct 0), count(distinct null) from employee
 PREHOOK: type: QUERY
diff --git a/ql/src/test/results/clientpositive/llap/multi_in_clause.q.out b/ql/src/test/results/clientpositive/llap/multi_in_clause.q.out
index 575c73c0b02..3bf26bd97d6 100644
--- a/ql/src/test/results/clientpositive/llap/multi_in_clause.q.out
+++ b/ql/src/test/results/clientpositive/llap/multi_in_clause.q.out
@@ -58,7 +58,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@very_simple_table_for_in_test
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(_o__c0=[AND(null, IS NULL($0))])
+HiveProject(_c0=[AND(null, IS NULL($0))])
   HiveTableScan(table=[[default, very_simple_table_for_in_test]], table:alias=[very_simple_table_for_in_test])
 
 PREHOOK: query: select name IN('g','r') AND name IN('a','b') from very_simple_table_for_in_test
@@ -82,7 +82,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@very_simple_table_for_in_test
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(_o__c0=[AND(null, IS NULL($0), IN($1, _UTF-16LE'x':VARCHAR(2147483647) CHARACTER SET "UTF-16LE", _UTF-16LE'y':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"))])
+HiveProject(_c0=[AND(null, IS NULL($0), IN($1, _UTF-16LE'x':VARCHAR(2147483647) CHARACTER SET "UTF-16LE", _UTF-16LE'y':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"))])
   HiveTableScan(table=[[default, very_simple_table_for_in_test]], table:alias=[very_simple_table_for_in_test])
 
 PREHOOK: query: select name IN('g','r') AND name IN('a','b') AND othername IN('x', 'y') from very_simple_table_for_in_test
diff --git a/ql/src/test/results/clientpositive/llap/multigroupbydistinct.q.out b/ql/src/test/results/clientpositive/llap/multigroupbydistinct.q.out
index 0fb91ca368c..63819ef5f4f 100644
--- a/ql/src/test/results/clientpositive/llap/multigroupbydistinct.q.out
+++ b/ql/src/test/results/clientpositive/llap/multigroupbydistinct.q.out
@@ -37,11 +37,12 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@tabw4intcols
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{2}], agg#0=[count($0)], agg#1=[count($1)])
-  HiveProject($f0=[CASE(AND(=($3, 1), IS NOT NULL($1)), 1, null:INTEGER)], $f1=[CASE(AND(=($3, 2), IS NOT NULL($2)), 1, null:INTEGER)], $f2=[$0])
-    HiveAggregate(group=[{0, 1, 2}], groups=[[{0, 1}, {0, 2}]], GROUPING__ID=[GROUPING__ID()])
-      HiveProject($f0=[$2], $f1=[$1], $f2=[$3])
-        HiveTableScan(table=[[default, tabw4intcols]], table:alias=[tabw4intcols])
+HiveProject(z=[$0], _c1=[$1], _c2=[$2])
+  HiveAggregate(group=[{2}], agg#0=[count($0)], agg#1=[count($1)])
+    HiveProject($f0=[CASE(AND(=($3, 1), IS NOT NULL($1)), 1, null:INTEGER)], $f1=[CASE(AND(=($3, 2), IS NOT NULL($2)), 1, null:INTEGER)], $f2=[$0])
+      HiveAggregate(group=[{0, 1, 2}], groups=[[{0, 1}, {0, 2}]], GROUPING__ID=[GROUPING__ID()])
+        HiveProject($f0=[$2], $f1=[$1], $f2=[$3])
+          HiveTableScan(table=[[default, tabw4intcols]], table:alias=[tabw4intcols])
 
 PREHOOK: query: select z, count(distinct y), count(distinct a)
 from tabw4intcols
@@ -74,11 +75,12 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@tabw4intcols
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{2, 3}], agg#0=[count($0)], agg#1=[count($1)])
-  HiveProject($f0=[CASE(AND(=($4, 1), IS NOT NULL($2)), 1, null:INTEGER)], $f1=[CASE(AND(=($4, 2), IS NOT NULL($3)), 1, null:INTEGER)], $f2=[$0], $f3=[$1])
-    HiveAggregate(group=[{0, 1, 2, 3}], groups=[[{0, 1, 2}, {0, 1, 3}]], GROUPING__ID=[GROUPING__ID()])
-      HiveProject($f0=[$2], $f1=[$0], $f2=[$1], $f3=[$3])
-        HiveTableScan(table=[[default, tabw4intcols]], table:alias=[tabw4intcols])
+HiveProject(z=[$0], x=[$1], _c2=[$2], _c3=[$3])
+  HiveAggregate(group=[{2, 3}], agg#0=[count($0)], agg#1=[count($1)])
+    HiveProject($f0=[CASE(AND(=($4, 1), IS NOT NULL($2)), 1, null:INTEGER)], $f1=[CASE(AND(=($4, 2), IS NOT NULL($3)), 1, null:INTEGER)], $f2=[$0], $f3=[$1])
+      HiveAggregate(group=[{0, 1, 2, 3}], groups=[[{0, 1, 2}, {0, 1, 3}]], GROUPING__ID=[GROUPING__ID()])
+        HiveProject($f0=[$2], $f1=[$0], $f2=[$1], $f3=[$3])
+          HiveTableScan(table=[[default, tabw4intcols]], table:alias=[tabw4intcols])
 
 PREHOOK: query: select z, x, count(distinct y), count(distinct a)
 from tabw4intcols
@@ -113,7 +115,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@tabw4intcols
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(x=[$1], z=[$0], _o__c2=[$2], _o__c3=[$3])
+HiveProject(x=[$1], z=[$0], _c2=[$2], _c3=[$3])
   HiveAggregate(group=[{2, 3}], agg#0=[count($0)], agg#1=[count($1)])
     HiveProject($f0=[CASE(AND(=($4, 1), IS NOT NULL($2)), 1, null:INTEGER)], $f1=[CASE(AND(=($4, 2), IS NOT NULL($3)), 1, null:INTEGER)], $f2=[$0], $f3=[$1])
       HiveAggregate(group=[{0, 1, 2, 3}], groups=[[{0, 1, 2}, {0, 1, 3}]], GROUPING__ID=[GROUPING__ID()])
@@ -153,7 +155,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@tabw4intcols
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(x=[$0], a=[$2], y=[$1], _o__c3=[$3])
+HiveProject(x=[$0], a=[$2], y=[$1], _c3=[$3])
   HiveAggregate(group=[{0, 1, 3}], agg#0=[count($2)])
     HiveProject(x=[$0], y=[$1], z=[$2], a=[$3])
       HiveAggregate(group=[{0, 1, 2, 3}])
@@ -196,7 +198,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@tabw4intcols
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(x=[$1], _o__c1=[$2], z=[$0], _o__c3=[$3])
+HiveProject(x=[$1], _c1=[$2], z=[$0], _c3=[$3])
   HiveAggregate(group=[{2, 3}], agg#0=[count($0)], agg#1=[count($1)])
     HiveProject($f0=[CASE(AND(=($4, 1), IS NOT NULL($2)), 1, null:INTEGER)], $f1=[CASE(AND(=($4, 2), IS NOT NULL($3)), 1, null:INTEGER)], $f2=[$0], $f3=[$1])
       HiveAggregate(group=[{0, 1, 2, 3}], groups=[[{0, 1, 2}, {0, 1, 3}]], GROUPING__ID=[GROUPING__ID()])
@@ -236,7 +238,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@tabw4intcols
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(_o__c0=[$2], x=[$1], z=[$0], _o__c3=[$3])
+HiveProject(_c0=[$2], x=[$1], z=[$0], _c3=[$3])
   HiveAggregate(group=[{2, 3}], agg#0=[count($0)], agg#1=[count($1)])
     HiveProject($f0=[CASE(AND(=($4, 1), IS NOT NULL($2)), 1, null:INTEGER)], $f1=[CASE(AND(=($4, 2), IS NOT NULL($3)), 1, null:INTEGER)], $f2=[$0], $f3=[$1])
       HiveAggregate(group=[{0, 1, 2, 3}], groups=[[{0, 1, 2}, {0, 1, 3}]], GROUPING__ID=[GROUPING__ID()])
diff --git a/ql/src/test/results/clientpositive/llap/murmur_hash_migration.q.out b/ql/src/test/results/clientpositive/llap/murmur_hash_migration.q.out
index 30830f723b0..737849e82f7 100644
--- a/ql/src/test/results/clientpositive/llap/murmur_hash_migration.q.out
+++ b/ql/src/test/results/clientpositive/llap/murmur_hash_migration.q.out
@@ -570,7 +570,7 @@ POSTHOOK: Input: default@srcbucket_mapjoin_n18@ds=2008-04-08
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n20
 POSTHOOK: Input: default@srcbucket_mapjoin_part_n20@ds=2008-04-08
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT *
+OPTIMIZED SQL: SELECT `t0`.`key` AS `t1.key`, `t0`.`value` AS `t1.value`, `t2`.`key` AS `t2.key`, `t2`.`value` AS `t2.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`srcbucket_mapjoin_n18`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -845,7 +845,7 @@ POSTHOOK: Input: default@tab_n10@ds=2008-04-08
 POSTHOOK: Input: default@tab_part_n11
 POSTHOOK: Input: default@tab_part_n11@ds=2008-04-08
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT *
+OPTIMIZED SQL: SELECT `t0`.`key` AS `t1.key`, `t0`.`value` AS `t1.value`, `t2`.`key` AS `t2.key`, `t2`.`value` AS `t2.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`tab_part_n11`
 WHERE `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/offset_limit_global_optimizer.q.out b/ql/src/test/results/clientpositive/llap/offset_limit_global_optimizer.q.out
index 9fcdc79f239..5300b89cce3 100644
--- a/ql/src/test/results/clientpositive/llap/offset_limit_global_optimizer.q.out
+++ b/ql/src/test/results/clientpositive/llap/offset_limit_global_optimizer.q.out
@@ -16,7 +16,7 @@ POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 POSTHOOK: Input: default@srcpart@ds=2008-04-09/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-09/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, SUBSTR(`value`, 5) AS `csubstr`, `ds`, `hr`
+OPTIMIZED SQL: SELECT `key` AS `srcpart.key`, SUBSTR(`value`, 5) AS `csubstr`, `ds`, `hr`
 FROM `default`.`srcpart`
 ORDER BY `key`, SUBSTR(`value`, 5), `ds`, `hr`
 LIMIT 10
@@ -299,7 +299,7 @@ POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 POSTHOOK: Input: default@srcpart@ds=2008-04-09/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-09/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, SUBSTR(`value`, 5) AS `csubstr`, `ds`, `hr`
+OPTIMIZED SQL: SELECT `key` AS `srcpart.key`, SUBSTR(`value`, 5) AS `csubstr`, `ds`, `hr`
 FROM `default`.`srcpart`
 ORDER BY `key`, SUBSTR(`value`, 5), `ds`, `hr`
 LIMIT 10
@@ -582,7 +582,7 @@ POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 POSTHOOK: Input: default@srcpart@ds=2008-04-09/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-09/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, SUBSTR(`value`, 5) AS `csubstr`, `ds`, `hr`
+OPTIMIZED SQL: SELECT `key` AS `srcpart.key`, SUBSTR(`value`, 5) AS `csubstr`, `ds`, `hr`
 FROM `default`.`srcpart`
 ORDER BY `key`, SUBSTR(`value`, 5), `ds`, `hr`
 LIMIT 20
@@ -875,7 +875,7 @@ POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 POSTHOOK: Input: default@srcpart@ds=2008-04-09/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-09/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, SUBSTR(`value`, 5) AS `csubstr`, `ds`, `hr`
+OPTIMIZED SQL: SELECT `key` AS `srcpart.key`, SUBSTR(`value`, 5) AS `csubstr`, `ds`, `hr`
 FROM `default`.`srcpart`
 ORDER BY `key`, SUBSTR(`value`, 5), `ds`, `hr`
 LIMIT 600
diff --git a/ql/src/test/results/clientpositive/llap/order_by_expr_2.q.out b/ql/src/test/results/clientpositive/llap/order_by_expr_2.q.out
index 04bc76156a3..b58039a7f75 100644
--- a/ql/src/test/results/clientpositive/llap/order_by_expr_2.q.out
+++ b/ql/src/test/results/clientpositive/llap/order_by_expr_2.q.out
@@ -226,7 +226,7 @@ POSTHOOK: Input: default@store
 #### A masked pattern was here ####
 CBO PLAN:
 HiveSortLimit(sort0=[$1], dir0=[ASC])
-  HiveProject($f0=[$0], $f1=[$1], $f2=[$2])
+  HiveProject(c0=[$0], c1=[$1], c2=[$2])
     HiveAggregate(group=[{0, 1, 2}])
       HiveProject($f0=[$0], $f1=[CASE(=($0, _UTF-16LE'HQ'), null:VARCHAR(2147483647) CHARACTER SET "UTF-16LE", $0)], $f2=[$1])
         HiveTableScan(table=[[default, store]], table:alias=[store])
diff --git a/ql/src/test/results/clientpositive/llap/outer_join_ppr.q.out b/ql/src/test/results/clientpositive/llap/outer_join_ppr.q.out
index 2f75aac9f42..8ff5ce57c38 100644
--- a/ql/src/test/results/clientpositive/llap/outer_join_ppr.q.out
+++ b/ql/src/test/results/clientpositive/llap/outer_join_ppr.q.out
@@ -26,7 +26,7 @@ POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT *
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`key` AS `b.key`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`src`
 WHERE `key` > 15 AND `key` < 20 AND `key` IS NOT NULL) AS `t0`
@@ -328,7 +328,7 @@ POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT *
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`key` AS `b.key`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`src`
 WHERE `key` > 15 AND `key` < 20 AND `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/parquet_vectorization_0.q.out b/ql/src/test/results/clientpositive/llap/parquet_vectorization_0.q.out
index 9856aea785c..3d01120514a 100644
--- a/ql/src/test/results/clientpositive/llap/parquet_vectorization_0.q.out
+++ b/ql/src/test/results/clientpositive/llap/parquet_vectorization_0.q.out
@@ -1209,7 +1209,7 @@ select count(*) from alltypesparquet
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@alltypesparquet
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM `default`.`alltypesparquet`
 WHERE `cstring1` LIKE 'a%' OR `cstring1` LIKE 'b%' OR `cstring1` LIKE 'c%' OR CHARACTER_LENGTH(`cstring1`) < 50 AND `cstring1` LIKE '%n' AND CHARACTER_LENGTH(`cstring1`) > 0
 STAGE DEPENDENCIES:
@@ -30020,7 +30020,7 @@ POSTHOOK: query: explain extended select * from alltypesparquet where
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@alltypesparquet
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `ctinyint`, `csmallint`, `cint`, `cbigint`, `cfloat`, `cdouble`, `cstring1`, `cstring2`, `ctimestamp1`, `ctimestamp2`, `cboolean1`, `cboolean2`
+OPTIMIZED SQL: SELECT `ctinyint` AS `alltypesparquet.ctinyint`, `csmallint` AS `alltypesparquet.csmallint`, `cint` AS `alltypesparquet.cint`, `cbigint` AS `alltypesparquet.cbigint`, `cfloat` AS `alltypesparquet.cfloat`, `cdouble` AS `alltypesparquet.cdouble`, `cstring1` AS `alltypesparquet.cstring1`, `cstring2` AS `alltypesparquet.cstring2`, `ctimestamp1` AS `alltypesparquet.ctimestamp1`, `ctimestamp2` AS `alltypesparquet.ctimestamp2`, `cboolean1` AS `alltypesparquet.cboolean1`, `cboolea [...]
 FROM `default`.`alltypesparquet`
 WHERE `cint` = 49 AND `cfloat` = 3.5 OR `cint` = 47 AND `cfloat` = 2.09 OR `cint` = 45 AND `cfloat` = 3.02
 STAGE DEPENDENCIES:
@@ -30131,7 +30131,7 @@ POSTHOOK: query: explain extended select * from alltypesparquet where
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@alltypesparquet
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `ctinyint`, `csmallint`, `cint`, `cbigint`, `cfloat`, `cdouble`, `cstring1`, `cstring2`, `ctimestamp1`, `ctimestamp2`, `cboolean1`, `cboolean2`
+OPTIMIZED SQL: SELECT `ctinyint` AS `alltypesparquet.ctinyint`, `csmallint` AS `alltypesparquet.csmallint`, `cint` AS `alltypesparquet.cint`, `cbigint` AS `alltypesparquet.cbigint`, `cfloat` AS `alltypesparquet.cfloat`, `cdouble` AS `alltypesparquet.cdouble`, `cstring1` AS `alltypesparquet.cstring1`, `cstring2` AS `alltypesparquet.cstring2`, `ctimestamp1` AS `alltypesparquet.ctimestamp1`, `ctimestamp2` AS `alltypesparquet.ctimestamp2`, `cboolean1` AS `alltypesparquet.cboolean1`, `cboolea [...]
 FROM `default`.`alltypesparquet`
 WHERE (`cint`, `cfloat`) IN ((49, 3.5), (47, 2.09), (45, 3.02))
 STAGE DEPENDENCIES:
@@ -30242,7 +30242,7 @@ POSTHOOK: query: explain extended select * from alltypesparquet where
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@alltypesparquet
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `ctinyint`, `csmallint`, `cint`, `cbigint`, `cfloat`, `cdouble`, `cstring1`, `cstring2`, `ctimestamp1`, `ctimestamp2`, `cboolean1`, `cboolean2`
+OPTIMIZED SQL: SELECT `ctinyint` AS `alltypesparquet.ctinyint`, `csmallint` AS `alltypesparquet.csmallint`, `cint` AS `alltypesparquet.cint`, `cbigint` AS `alltypesparquet.cbigint`, `cfloat` AS `alltypesparquet.cfloat`, `cdouble` AS `alltypesparquet.cdouble`, `cstring1` AS `alltypesparquet.cstring1`, `cstring2` AS `alltypesparquet.cstring2`, `ctimestamp1` AS `alltypesparquet.ctimestamp1`, `ctimestamp2` AS `alltypesparquet.ctimestamp2`, `cboolean1` AS `alltypesparquet.cboolean1`, `cboolea [...]
 FROM `default`.`alltypesparquet`
 WHERE (`cint` = 49 OR `cfloat` = 3.5) AND (`cint` = 47 OR `cfloat` = 2.09) AND (`cint` = 45 OR `cfloat` = 3.02)
 STAGE DEPENDENCIES:
@@ -30351,7 +30351,7 @@ POSTHOOK: query: explain extended select count(*),cstring1 from alltypesparquet
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@alltypesparquet
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `_o__c0`, `cstring1`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`, `cstring1`
 FROM `default`.`alltypesparquet`
 WHERE `cstring1` IN ('biology', 'history', 'topology')
 GROUP BY `cstring1`
diff --git a/ql/src/test/results/clientpositive/llap/partition_explain_ddl.q.out b/ql/src/test/results/clientpositive/llap/partition_explain_ddl.q.out
index 2319466ef98..86a09dc3e30 100644
--- a/ql/src/test/results/clientpositive/llap/partition_explain_ddl.q.out
+++ b/ql/src/test/results/clientpositive/llap/partition_explain_ddl.q.out
@@ -40,7 +40,7 @@ EXPLAIN select * from add_part_test;
 EXPLAIN CBO select * from add_part_test;
 
 EXPLAIN VECTORIZED select * from add_part_test;
-CBO PLAN:HiveProject(key=[$0], value=[$1], ds=[$2])
+CBO PLAN:HiveProject(add_part_test.key=[$0], add_part_test.value=[$1], add_part_test.ds=[$2])
   HiveTableScan(table=[[default, add_part_test]], table:alias=[add_part_test])
 
 PLAN VECTORIZATION:
@@ -162,7 +162,7 @@ EXPLAIN CBO select * from add_part_test where ds='2010-01-01';
 
 
 EXPLAIN VECTORIZED select * from add_part_test where ds='2010-01-01';
-CBO PLAN:HiveProject(key=[$0], value=[$1], ds=[CAST(_UTF-16LE'2010-01-01':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"):VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
+CBO PLAN:HiveProject(add_part_test.key=[$0], add_part_test.value=[$1], add_part_test.ds=[CAST(_UTF-16LE'2010-01-01':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"):VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
   HiveFilter(condition=[=($2, _UTF-16LE'2010-01-01')])
     HiveTableScan(table=[[default, add_part_test]], table:alias=[add_part_test])
 
@@ -288,7 +288,7 @@ EXPLAIN CBO select * from add_part_test where ds>='2010-01-01';
 
 
 EXPLAIN VECTORIZED select * from add_part_test where ds>='2010-01-01';
-CBO PLAN:HiveProject(key=[$0], value=[$1], ds=[$2])
+CBO PLAN:HiveProject(add_part_test.key=[$0], add_part_test.value=[$1], add_part_test.ds=[$2])
   HiveFilter(condition=[>=($2, _UTF-16LE'2010-01-01')])
     HiveTableScan(table=[[default, add_part_test]], table:alias=[add_part_test])
 
@@ -436,7 +436,7 @@ EXPLAIN CBO select * from add_part_test_db.add_part_test where ds='2010-01-01';
 
 
 EXPLAIN VECTORIZED select * from add_part_test_db.add_part_test where ds='2010-01-01';
-CBO PLAN:HiveProject(key=[$0], value=[$1], ds=[CAST(_UTF-16LE'2010-01-01':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"):VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
+CBO PLAN:HiveProject(add_part_test.key=[$0], add_part_test.value=[$1], add_part_test.ds=[CAST(_UTF-16LE'2010-01-01':VARCHAR(2147483647) CHARACTER SET "UTF-16LE"):VARCHAR(2147483647) CHARACTER SET "UTF-16LE"])
   HiveFilter(condition=[=($2, _UTF-16LE'2010-01-01')])
     HiveTableScan(table=[[add_part_test_db, add_part_test]], table:alias=[add_part_test])
 
@@ -562,7 +562,7 @@ EXPLAIN CBO select * from add_part_test_db.add_part_test where ds>='2010-01-01';
 
 
 EXPLAIN VECTORIZED select * from add_part_test_db.add_part_test where ds>='2010-01-01';
-CBO PLAN:HiveProject(key=[$0], value=[$1], ds=[$2])
+CBO PLAN:HiveProject(add_part_test.key=[$0], add_part_test.value=[$1], add_part_test.ds=[$2])
   HiveFilter(condition=[>=($2, _UTF-16LE'2010-01-01')])
     HiveTableScan(table=[[add_part_test_db, add_part_test]], table:alias=[add_part_test])
 
@@ -664,7 +664,7 @@ EXPLAIN CBO select * from add_part_test_db.add_part_test;
 
 
 EXPLAIN VECTORIZED select * from add_part_test_db.add_part_test;
-CBO PLAN:HiveProject(key=[$0], value=[$1], ds=[$2])
+CBO PLAN:HiveProject(add_part_test.key=[$0], add_part_test.value=[$1], add_part_test.ds=[$2])
   HiveTableScan(table=[[add_part_test_db, add_part_test]], table:alias=[add_part_test])
 
 PLAN VECTORIZATION:
@@ -970,7 +970,7 @@ EXPLAIN CBO select * from db_bdpbase.default_partition_test;
 
 
 EXPLAIN VECTORIZED select * from db_bdpbase.default_partition_test;
-CBO PLAN:HiveProject(id=[$0], firstname=[$1], lastname=[$2], city=[$3], country=[$4], sports=[$5])
+CBO PLAN:HiveProject(default_partition_test.id=[$0], default_partition_test.firstname=[$1], default_partition_test.lastname=[$2], default_partition_test.city=[$3], default_partition_test.country=[$4], default_partition_test.sports=[$5])
   HiveTableScan(table=[[db_bdpbase, default_partition_test]], table:alias=[default_partition_test])
 
 PLAN VECTORIZATION:
@@ -1100,7 +1100,7 @@ EXPLAIN CBO select * from test_partitions;
 
 
 EXPLAIN VECTORIZED select * from test_partitions;
-CBO PLAN:HiveProject(a=[$0], b=[$1], c=[$2], d=[$3], e=[$4])
+CBO PLAN:HiveProject(test_partitions.a=[$0], test_partitions.b=[$1], test_partitions.c=[$2], test_partitions.d=[$3], test_partitions.e=[$4])
   HiveTableScan(table=[[default, test_partitions]], table:alias=[test_partitions])
 
 PLAN VECTORIZATION:
diff --git a/ql/src/test/results/clientpositive/llap/partition_params_xinclude.q.out b/ql/src/test/results/clientpositive/llap/partition_params_xinclude.q.out
index 32588d04432..6d1903c0c1d 100644
--- a/ql/src/test/results/clientpositive/llap/partition_params_xinclude.q.out
+++ b/ql/src/test/results/clientpositive/llap/partition_params_xinclude.q.out
@@ -71,7 +71,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@part_params_xin
 POSTHOOK: Input: default@part_params_xin@dt=2001-01-01
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `customer`, `dt`
+OPTIMIZED SQL: SELECT `customer` AS `part_params_xin.customer`, `dt` AS `part_params_xin.dt`
 FROM `default`.`part_params_xin`
 WHERE NVL(`dt` = '2001-01-01' AND `customer` = 1, FALSE)
 STAGE DEPENDENCIES:
@@ -145,7 +145,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@part_params_xin
 POSTHOOK: Input: default@part_params_xin@dt=2001-01-01
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `customer`, `dt`
+OPTIMIZED SQL: SELECT `customer` AS `part_params_xin.customer`, `dt` AS `part_params_xin.dt`
 FROM `default`.`part_params_xin`
 WHERE NVL(`dt` = '2001-01-01' AND `customer` = 1, FALSE)
 STAGE DEPENDENCIES:
@@ -216,7 +216,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@part_params_xin
 POSTHOOK: Input: default@part_params_xin@dt=2001-01-01
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `customer`, `dt`
+OPTIMIZED SQL: SELECT `customer` AS `part_params_xin.customer`, `dt` AS `part_params_xin.dt`
 FROM `default`.`part_params_xin`
 WHERE NVL(`dt` = '2001-01-01' AND `customer` = 1, FALSE)
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/partition_pruning.q.out b/ql/src/test/results/clientpositive/llap/partition_pruning.q.out
index 362dda0abd4..92995631de4 100644
--- a/ql/src/test/results/clientpositive/llap/partition_pruning.q.out
+++ b/ql/src/test/results/clientpositive/llap/partition_pruning.q.out
@@ -102,7 +102,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@daysales
 POSTHOOK: Input: default@daysales@dt=2001-01-01
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `customer`, `dt`
+OPTIMIZED SQL: SELECT `customer` AS `daysales.customer`, `dt` AS `daysales.dt`
 FROM `default`.`daysales`
 WHERE NVL(`dt` = '2001-01-01' AND `customer` = 1, FALSE)
 STAGE DEPENDENCIES:
@@ -172,7 +172,7 @@ POSTHOOK: Input: default@daysales
 POSTHOOK: Input: default@daysales@dt=2001-01-01
 POSTHOOK: Input: default@daysales@dt=2001-01-03
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `customer`, `dt`
+OPTIMIZED SQL: SELECT `customer` AS `daysales.customer`, `dt` AS `daysales.dt`
 FROM `default`.`daysales`
 WHERE NVL(`dt` = '2001-01-01' OR `customer` = 3, FALSE)
 STAGE DEPENDENCIES:
@@ -276,7 +276,7 @@ POSTHOOK: Input: default@daysales
 POSTHOOK: Input: default@daysales@dt=2001-01-01
 POSTHOOK: Input: default@daysales@dt=2001-01-03
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `customer`, `dt`
+OPTIMIZED SQL: SELECT `customer` AS `daysales.customer`, `dt` AS `daysales.dt`
 FROM `default`.`daysales`
 WHERE NVL(`dt` = '2001-01-01' OR `customer` = 3, FALSE)
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/partition_unix_timestamp.q.out b/ql/src/test/results/clientpositive/llap/partition_unix_timestamp.q.out
index b748ce52340..e72d30f4d1c 100644
--- a/ql/src/test/results/clientpositive/llap/partition_unix_timestamp.q.out
+++ b/ql/src/test/results/clientpositive/llap/partition_unix_timestamp.q.out
@@ -23,7 +23,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(a=[$0], p_year=[$1])
+HiveProject(t1.a=[$0], t1.p_year=[$1])
   HiveFilter(condition=[=(CAST($1):DOUBLE, 2.0250E3)])
     HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
diff --git a/ql/src/test/results/clientpositive/llap/pcr.q.out b/ql/src/test/results/clientpositive/llap/pcr.q.out
index 4b174a38515..a1f5a0f77d0 100644
--- a/ql/src/test/results/clientpositive/llap/pcr.q.out
+++ b/ql/src/test/results/clientpositive/llap/pcr.q.out
@@ -2290,7 +2290,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@pcr_t1
 POSTHOOK: Input: default@pcr_t1@ds=2000-04-08
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, CAST('2000-04-08' AS STRING) AS `ds`, `t2`.`key` AS `key1`, `t2`.`value` AS `value1`, CAST('2000-04-08' AS STRING) AS `ds1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `t1.key`, `t0`.`value` AS `t1.value`, CAST('2000-04-08' AS STRING) AS `t1.ds`, `t2`.`key` AS `t2.key`, `t2`.`value` AS `t2.value`, CAST('2000-04-08' AS STRING) AS `t2.ds`
 FROM (SELECT `key`, `value`
 FROM `default`.`pcr_t1`
 WHERE `ds` = '2000-04-08' AND `key` IS NOT NULL) AS `t0`
@@ -2571,7 +2571,7 @@ POSTHOOK: Input: default@pcr_t1
 POSTHOOK: Input: default@pcr_t1@ds=2000-04-08
 POSTHOOK: Input: default@pcr_t1@ds=2000-04-09
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, CAST('2000-04-08' AS STRING) AS `ds`, `t2`.`key` AS `key1`, `t2`.`value` AS `value1`, CAST('2000-04-09' AS STRING) AS `ds1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `t1.key`, `t0`.`value` AS `t1.value`, CAST('2000-04-08' AS STRING) AS `t1.ds`, `t2`.`key` AS `t2.key`, `t2`.`value` AS `t2.value`, CAST('2000-04-09' AS STRING) AS `t2.ds`
 FROM (SELECT `key`, `value`
 FROM `default`.`pcr_t1`
 WHERE `ds` = '2000-04-08' AND `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/pcs.q.out b/ql/src/test/results/clientpositive/llap/pcs.q.out
index 204b8dc2da9..b0ce8b5d0cf 100644
--- a/ql/src/test/results/clientpositive/llap/pcs.q.out
+++ b/ql/src/test/results/clientpositive/llap/pcs.q.out
@@ -520,7 +520,7 @@ POSTHOOK: Input: default@pcs_t1
 POSTHOOK: Input: default@pcs_t1@ds=2000-04-08
 POSTHOOK: Input: default@pcs_t1@ds=2000-04-09
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`ds`, `t2`.`key`
+OPTIMIZED SQL: SELECT `t0`.`ds` AS `a.ds`, `t2`.`key` AS `b.key`
 FROM (SELECT `key`, `ds`
 FROM `default`.`pcs_t1`
 WHERE `key` IN (1, 2) AND `ds` IN ('2000-04-08', '2000-04-09')) AS `t0`
@@ -1203,7 +1203,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@pcs_t1
 POSTHOOK: Input: default@pcs_t1@ds=2000-04-08
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT CAST('2000-04-08' AS STRING) AS `$f0`
+OPTIMIZED SQL: SELECT CAST('2000-04-08' AS STRING) AS `ds`
 FROM `default`.`pcs_t1`
 WHERE `ds` = '2000-04-08'
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/plan_json.q.out b/ql/src/test/results/clientpositive/llap/plan_json.q.out
index ecc2c513f68..0b9d6164b8a 100644
--- a/ql/src/test/results/clientpositive/llap/plan_json.q.out
+++ b/ql/src/test/results/clientpositive/llap/plan_json.q.out
@@ -6,4 +6,4 @@ POSTHOOK: query: EXPLAIN FORMATTED SELECT count(1) FROM src
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 #### A masked pattern was here ####
-{"CBOPlan":"{\n  \"rels\": [\n    {\n      \"id\": \"0\",\n      \"relOp\": \"org.apache.hadoop.hive.ql.optimizer.calcite.reloperators.HiveTableScan\",\n      \"table\": [\n        \"default\",\n        \"src\"\n      ],\n      \"table:alias\": \"src\",\n      \"inputs\": [],\n      \"rowCount\": 500.0,\n      \"avgRowSize\": 0.0,\n      \"rowType\": {\n        \"fields\": [\n          {\n            \"type\": \"VARCHAR\",\n            \"nullable\": true,\n            \"precision\": 2147 [...]
+{"CBOPlan":"{\n  \"rels\": [\n    {\n      \"id\": \"0\",\n      \"relOp\": \"org.apache.hadoop.hive.ql.optimizer.calcite.reloperators.HiveTableScan\",\n      \"table\": [\n        \"default\",\n        \"src\"\n      ],\n      \"table:alias\": \"src\",\n      \"inputs\": [],\n      \"rowCount\": 500.0,\n      \"avgRowSize\": 0.0,\n      \"rowType\": {\n        \"fields\": [\n          {\n            \"type\": \"VARCHAR\",\n            \"nullable\": true,\n            \"precision\": 2147 [...]
diff --git a/ql/src/test/results/clientpositive/llap/pointlookup2.q.out b/ql/src/test/results/clientpositive/llap/pointlookup2.q.out
index 510bd2880e7..84d82683c41 100644
--- a/ql/src/test/results/clientpositive/llap/pointlookup2.q.out
+++ b/ql/src/test/results/clientpositive/llap/pointlookup2.q.out
@@ -289,7 +289,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@pcr_t1_n2
 POSTHOOK: Input: default@pcr_t1_n2@ds=2000-04-08
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, CAST('2000-04-08' AS STRING) AS `ds`, `t2`.`key` AS `key1`, `t2`.`value` AS `value1`, CAST('2000-04-08' AS STRING) AS `ds1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `t1.key`, `t0`.`value` AS `t1.value`, CAST('2000-04-08' AS STRING) AS `t1.ds`, `t2`.`key` AS `t2.key`, `t2`.`value` AS `t2.value`, CAST('2000-04-08' AS STRING) AS `t2.ds`
 FROM (SELECT `key`, `value`
 FROM `default`.`pcr_t1_n2`
 WHERE `ds` = '2000-04-08' AND `key` IS NOT NULL) AS `t0`
@@ -530,7 +530,7 @@ POSTHOOK: Input: default@pcr_t1_n2
 POSTHOOK: Input: default@pcr_t1_n2@ds=2000-04-08
 POSTHOOK: Input: default@pcr_t1_n2@ds=2000-04-09
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, CAST('2000-04-08' AS STRING) AS `ds`, `t2`.`key` AS `key1`, `t2`.`value` AS `value1`, CAST('2000-04-09' AS STRING) AS `ds1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `t1.key`, `t0`.`value` AS `t1.value`, CAST('2000-04-08' AS STRING) AS `t1.ds`, `t2`.`key` AS `t2.key`, `t2`.`value` AS `t2.value`, CAST('2000-04-09' AS STRING) AS `t2.ds`
 FROM (SELECT `key`, `value`
 FROM `default`.`pcr_t1_n2`
 WHERE `ds` = '2000-04-08' AND `key` IS NOT NULL) AS `t0`
@@ -774,7 +774,7 @@ POSTHOOK: Input: default@pcr_t1_n2@ds=2000-04-08
 POSTHOOK: Input: default@pcr_t1_n2@ds=2000-04-09
 POSTHOOK: Input: default@pcr_t2_n0
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, `t0`.`ds`, `t2`.`ds` AS `ds1`, `t2`.`key` AS `key1`, `t2`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `t1.key`, `t0`.`value` AS `t1.value`, `t0`.`ds` AS `t1.ds`, `t2`.`ds` AS `t2.ds`, `t2`.`key` AS `t2.key`, `t2`.`value` AS `t2.value`
 FROM (SELECT `key`, `value`, `ds`, `ds` = '2000-04-08' AS `EXPR$0`, `ds` = '2000-04-09' AS `EXPR$1`
 FROM `default`.`pcr_t1_n2`
 WHERE `ds` IN ('2000-04-08', '2000-04-09')) AS `t0`
@@ -1050,7 +1050,7 @@ POSTHOOK: Input: default@pcr_t1_n2@ds=2000-04-09
 POSTHOOK: Input: default@pcr_t1_n2@ds=2000-04-10
 POSTHOOK: Input: default@pcr_t2_n0
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, `t0`.`ds`, `t2`.`ds` AS `ds1`, `t2`.`key` AS `key1`, `t2`.`value` AS `value1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `t1.key`, `t0`.`value` AS `t1.value`, `t0`.`ds` AS `t1.ds`, `t2`.`ds` AS `t2.ds`, `t2`.`key` AS `t2.key`, `t2`.`value` AS `t2.value`
 FROM (SELECT `key`, `value`, `ds`, `key` = 1 AS `EXPR$0`, `key` = 2 AS `EXPR$1`
 FROM `default`.`pcr_t1_n2`
 WHERE `key` IN (1, 2)) AS `t0`
@@ -1717,7 +1717,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@pcr_t1_n2
 POSTHOOK: Input: default@pcr_t1_n2@ds=2000-04-08
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, CAST('2000-04-08' AS STRING) AS `ds`, `t2`.`key` AS `key1`, `t2`.`value` AS `value1`, CAST('2000-04-08' AS STRING) AS `ds1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `t1.key`, `t0`.`value` AS `t1.value`, CAST('2000-04-08' AS STRING) AS `t1.ds`, `t2`.`key` AS `t2.key`, `t2`.`value` AS `t2.value`, CAST('2000-04-08' AS STRING) AS `t2.ds`
 FROM (SELECT `key`, `value`
 FROM `default`.`pcr_t1_n2`
 WHERE `ds` = '2000-04-08' AND `key` IS NOT NULL) AS `t0`
@@ -1958,7 +1958,7 @@ POSTHOOK: Input: default@pcr_t1_n2
 POSTHOOK: Input: default@pcr_t1_n2@ds=2000-04-08
 POSTHOOK: Input: default@pcr_t1_n2@ds=2000-04-09
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, CAST('2000-04-08' AS STRING) AS `ds`, `t2`.`key` AS `key1`, `t2`.`value` AS `value1`, CAST('2000-04-09' AS STRING) AS `ds1`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `t1.key`, `t0`.`value` AS `t1.value`, CAST('2000-04-08' AS STRING) AS `t1.ds`, `t2`.`key` AS `t2.key`, `t2`.`value` AS `t2.value`, CAST('2000-04-09' AS STRING) AS `t2.ds`
 FROM (SELECT `key`, `value`
 FROM `default`.`pcr_t1_n2`
 WHERE `ds` = '2000-04-08' AND `key` IS NOT NULL) AS `t0`
@@ -2202,7 +2202,7 @@ POSTHOOK: Input: default@pcr_t1_n2@ds=2000-04-08
 POSTHOOK: Input: default@pcr_t1_n2@ds=2000-04-09
 POSTHOOK: Input: default@pcr_t2_n0
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT *
+OPTIMIZED SQL: SELECT `t0`.`key` AS `t1.key`, `t0`.`value` AS `t1.value`, `t0`.`ds` AS `t1.ds`, `t2`.`ds` AS `t2.ds`, `t2`.`key` AS `t2.key`, `t2`.`value` AS `t2.value`
 FROM (SELECT `key`, `value`, `ds`
 FROM `default`.`pcr_t1_n2`
 WHERE `ds` IN ('2000-04-08', '2000-04-09')) AS `t0`
@@ -2475,7 +2475,7 @@ POSTHOOK: Input: default@pcr_t1_n2@ds=2000-04-09
 POSTHOOK: Input: default@pcr_t1_n2@ds=2000-04-10
 POSTHOOK: Input: default@pcr_t2_n0
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT *
+OPTIMIZED SQL: SELECT `t0`.`key` AS `t1.key`, `t0`.`value` AS `t1.value`, `t0`.`ds` AS `t1.ds`, `t2`.`ds` AS `t2.ds`, `t2`.`key` AS `t2.key`, `t2`.`value` AS `t2.value`
 FROM (SELECT `key`, `value`, `ds`
 FROM `default`.`pcr_t1_n2`
 WHERE `key` IN (1, 2)) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/pointlookup3.q.out b/ql/src/test/results/clientpositive/llap/pointlookup3.q.out
index 4b79bcf8c82..d91a3162f6f 100644
--- a/ql/src/test/results/clientpositive/llap/pointlookup3.q.out
+++ b/ql/src/test/results/clientpositive/llap/pointlookup3.q.out
@@ -382,7 +382,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@pcr_t1_n1
 POSTHOOK: Input: default@pcr_t1_n1@ds1=2000-04-08/ds2=2001-04-08
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, CAST('2000-04-08' AS STRING) AS `ds1`, `t0`.`ds2`, `t2`.`key` AS `key1`, `t2`.`value` AS `value1`, `t2`.`ds1` AS `ds11`, CAST('2001-04-08' AS STRING) AS `ds21`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `t1.key`, `t0`.`value` AS `t1.value`, CAST('2000-04-08' AS STRING) AS `t1.ds1`, `t0`.`ds2` AS `t1.ds2`, `t2`.`key` AS `t2.key`, `t2`.`value` AS `t2.value`, `t2`.`ds1` AS `t2.ds1`, CAST('2001-04-08' AS STRING) AS `t2.ds2`
 FROM (SELECT `key`, `value`, `ds2`
 FROM `default`.`pcr_t1_n1`
 WHERE `ds1` = '2000-04-08' AND `key` IS NOT NULL) AS `t0`
@@ -625,7 +625,7 @@ POSTHOOK: Input: default@pcr_t1_n1
 POSTHOOK: Input: default@pcr_t1_n1@ds1=2000-04-08/ds2=2001-04-08
 POSTHOOK: Input: default@pcr_t1_n1@ds1=2000-04-09/ds2=2001-04-09
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, CAST('2000-04-08' AS STRING) AS `ds1`, `t0`.`ds2`, `t2`.`key` AS `key1`, `t2`.`value` AS `value1`, CAST('2000-04-09' AS STRING) AS `ds11`, `t2`.`ds2` AS `ds21`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `t1.key`, `t0`.`value` AS `t1.value`, CAST('2000-04-08' AS STRING) AS `t1.ds1`, `t0`.`ds2` AS `t1.ds2`, `t2`.`key` AS `t2.key`, `t2`.`value` AS `t2.value`, CAST('2000-04-09' AS STRING) AS `t2.ds1`, `t2`.`ds2` AS `t2.ds2`
 FROM (SELECT `key`, `value`, `ds2`
 FROM `default`.`pcr_t1_n1`
 WHERE `ds1` = '2000-04-08' AND `key` IS NOT NULL) AS `t0`
@@ -871,7 +871,7 @@ POSTHOOK: Input: default@pcr_t1_n1@ds1=2000-04-08/ds2=2001-04-08
 POSTHOOK: Input: default@pcr_t1_n1@ds1=2000-04-09/ds2=2001-04-09
 POSTHOOK: Input: default@pcr_t1_n1@ds1=2000-04-10/ds2=2001-04-10
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, `t0`.`ds1`, `t0`.`ds2`, `t2`.`key` AS `key1`, `t2`.`value` AS `value1`, `t2`.`ds1` AS `ds11`, `t2`.`ds2` AS `ds21`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `t1.key`, `t0`.`value` AS `t1.value`, `t0`.`ds1` AS `t1.ds1`, `t0`.`ds2` AS `t1.ds2`, `t2`.`key` AS `t2.key`, `t2`.`value` AS `t2.value`, `t2`.`ds1` AS `t2.ds1`, `t2`.`ds2` AS `t2.ds2`
 FROM (SELECT `key`, `value`, `ds1`, `ds2`, `ds1` = '2000-04-08' AS `EXPR$0`, `ds1` = '2000-04-09' AS `EXPR$1`
 FROM `default`.`pcr_t1_n1`
 WHERE `ds1` IN ('2000-04-08', '2000-04-09')) AS `t0`
@@ -1771,7 +1771,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@pcr_t1_n1
 POSTHOOK: Input: default@pcr_t1_n1@ds1=2000-04-08/ds2=2001-04-08
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, CAST('2000-04-08' AS STRING) AS `ds1`, `t0`.`ds2`, `t2`.`key` AS `key1`, `t2`.`value` AS `value1`, `t2`.`ds1` AS `ds11`, CAST('2001-04-08' AS STRING) AS `ds21`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `t1.key`, `t0`.`value` AS `t1.value`, CAST('2000-04-08' AS STRING) AS `t1.ds1`, `t0`.`ds2` AS `t1.ds2`, `t2`.`key` AS `t2.key`, `t2`.`value` AS `t2.value`, `t2`.`ds1` AS `t2.ds1`, CAST('2001-04-08' AS STRING) AS `t2.ds2`
 FROM (SELECT `key`, `value`, `ds2`
 FROM `default`.`pcr_t1_n1`
 WHERE `ds1` = '2000-04-08' AND `key` IS NOT NULL) AS `t0`
@@ -2014,7 +2014,7 @@ POSTHOOK: Input: default@pcr_t1_n1
 POSTHOOK: Input: default@pcr_t1_n1@ds1=2000-04-08/ds2=2001-04-08
 POSTHOOK: Input: default@pcr_t1_n1@ds1=2000-04-09/ds2=2001-04-09
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`key`, `t0`.`value`, CAST('2000-04-08' AS STRING) AS `ds1`, `t0`.`ds2`, `t2`.`key` AS `key1`, `t2`.`value` AS `value1`, CAST('2000-04-09' AS STRING) AS `ds11`, `t2`.`ds2` AS `ds21`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `t1.key`, `t0`.`value` AS `t1.value`, CAST('2000-04-08' AS STRING) AS `t1.ds1`, `t0`.`ds2` AS `t1.ds2`, `t2`.`key` AS `t2.key`, `t2`.`value` AS `t2.value`, CAST('2000-04-09' AS STRING) AS `t2.ds1`, `t2`.`ds2` AS `t2.ds2`
 FROM (SELECT `key`, `value`, `ds2`
 FROM `default`.`pcr_t1_n1`
 WHERE `ds1` = '2000-04-08' AND `key` IS NOT NULL) AS `t0`
@@ -2260,7 +2260,7 @@ POSTHOOK: Input: default@pcr_t1_n1@ds1=2000-04-08/ds2=2001-04-08
 POSTHOOK: Input: default@pcr_t1_n1@ds1=2000-04-09/ds2=2001-04-09
 POSTHOOK: Input: default@pcr_t1_n1@ds1=2000-04-10/ds2=2001-04-10
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT *
+OPTIMIZED SQL: SELECT `t0`.`key` AS `t1.key`, `t0`.`value` AS `t1.value`, `t0`.`ds1` AS `t1.ds1`, `t0`.`ds2` AS `t1.ds2`, `t2`.`key` AS `t2.key`, `t2`.`value` AS `t2.value`, `t2`.`ds1` AS `t2.ds1`, `t2`.`ds2` AS `t2.ds2`
 FROM (SELECT `key`, `value`, `ds1`, `ds2`
 FROM `default`.`pcr_t1_n1`
 WHERE `ds1` IN ('2000-04-08', '2000-04-09')) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/pointlookup6.q.out b/ql/src/test/results/clientpositive/llap/pointlookup6.q.out
index 1cb5775b171..10d99588a0c 100644
--- a/ql/src/test/results/clientpositive/llap/pointlookup6.q.out
+++ b/ql/src/test/results/clientpositive/llap/pointlookup6.q.out
@@ -55,7 +55,7 @@ POSTHOOK: Input: default@l_table
 POSTHOOK: Input: default@r_table
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(string_col=[$0])
+HiveProject(l_table.string_col=[$0])
   HiveJoin(condition=[=($1, $0)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(string_col=[$0])
       HiveFilter(condition=[IN($0, _UTF-16LE'AAA111':VARCHAR(30) CHARACTER SET "UTF-16LE", _UTF-16LE'BBB222':VARCHAR(30) CHARACTER SET "UTF-16LE")])
@@ -98,7 +98,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@r_table
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(string_col=[$0])
+HiveProject(r_table.string_col=[$0])
   HiveFilter(condition=[OR(IS NULL(CAST($0):TIMESTAMP(9)), IN(MINUTE(FLAG(MINUTE), CAST($0):TIMESTAMP(9)), 2, 10))])
     HiveTableScan(table=[[default, r_table]], table:alias=[r_table])
 
diff --git a/ql/src/test/results/clientpositive/llap/ppd_join_filter.q.out b/ql/src/test/results/clientpositive/llap/ppd_join_filter.q.out
index c6584d8f7fc..a6a70108877 100644
--- a/ql/src/test/results/clientpositive/llap/ppd_join_filter.q.out
+++ b/ql/src/test/results/clientpositive/llap/ppd_join_filter.q.out
@@ -28,7 +28,7 @@ on a.key=b.key and b.k1 < 5
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`key`, `t4`.`k2`, `t4`.`k3`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t4`.`k2` AS `b.k2`, `t4`.`k3` AS `b.k3`
 FROM (SELECT `key`
 FROM `default`.`src`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -273,7 +273,7 @@ on a.key=b.key and b.k1 < 5
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`key`, `t4`.`k2`, `t4`.`k3`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t4`.`k2` AS `b.k2`, `t4`.`k3` AS `b.k3`
 FROM (SELECT `key`
 FROM `default`.`src`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -518,7 +518,7 @@ on a.key=b.key and b.k1 < 5
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`key`, `t4`.`k2`, `t4`.`k3`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t4`.`k2` AS `b.k2`, `t4`.`k3` AS `b.k3`
 FROM (SELECT `key`
 FROM `default`.`src`
 WHERE `key` IS NOT NULL) AS `t0`
@@ -762,7 +762,7 @@ on a.key=b.key and b.k1 < 5
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t0`.`key`, `t4`.`k2`, `t4`.`k3`
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t4`.`k2` AS `b.k2`, `t4`.`k3` AS `b.k3`
 FROM (SELECT `key`
 FROM `default`.`src`
 WHERE `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/ppd_union_view.q.out b/ql/src/test/results/clientpositive/llap/ppd_union_view.q.out
index b62bc644e05..83d1359a0ff 100644
--- a/ql/src/test/results/clientpositive/llap/ppd_union_view.q.out
+++ b/ql/src/test/results/clientpositive/llap/ppd_union_view.q.out
@@ -150,7 +150,7 @@ POSTHOOK: Input: default@t1_new_n0
 POSTHOOK: Input: default@t1_old
 POSTHOOK: Input: default@t1_old@ds=2011-10-13
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, `value`, CAST('2011-10-13' AS STRING) AS `ds`
+OPTIMIZED SQL: SELECT `key` AS `t1_n113.key`, `value` AS `t1_n113.value`, CAST('2011-10-13' AS STRING) AS `t1_n113.ds`
 FROM (SELECT `key`, `value`
 FROM `default`.`t1_new_n0`
 WHERE `ds` = '2011-10-13'
@@ -476,7 +476,7 @@ POSTHOOK: Input: default@t1_new_n0
 POSTHOOK: Input: default@t1_new_n0@ds=2011-10-15
 POSTHOOK: Input: default@t1_old
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, `value`, CAST('2011-10-15' AS STRING) AS `ds`
+OPTIMIZED SQL: SELECT `key` AS `t1_n113.key`, `value` AS `t1_n113.value`, CAST('2011-10-15' AS STRING) AS `t1_n113.ds`
 FROM (SELECT `key`, `value`
 FROM `default`.`t1_new_n0`
 WHERE `ds` = '2011-10-15'
diff --git a/ql/src/test/results/clientpositive/llap/ppd_vc.q.out b/ql/src/test/results/clientpositive/llap/ppd_vc.q.out
index 2785cee9c38..4e8c1aaf8f6 100644
--- a/ql/src/test/results/clientpositive/llap/ppd_vc.q.out
+++ b/ql/src/test/results/clientpositive/llap/ppd_vc.q.out
@@ -16,7 +16,7 @@ POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 POSTHOOK: Input: default@srcpart@ds=2008-04-09/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-09/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, `value`, `ds`, `hr`
+OPTIMIZED SQL: SELECT `key` AS `srcpart.key`, `value` AS `srcpart.value`, `ds` AS `srcpart.ds`, `hr` AS `srcpart.hr`
 FROM `default`.`srcpart`
 WHERE `BLOCK__OFFSET__INSIDE__FILE` < 100
 STAGE DEPENDENCIES:
@@ -256,7 +256,7 @@ POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 POSTHOOK: Input: default@srcpart@ds=2008-04-09/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-09/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `t2`.`key`, `t2`.`value`, `t2`.`ds`, `t2`.`hr`, `t2`.`BLOCK__OFFSET__INSIDE__FILE` AS `block__offset__inside__file`
+OPTIMIZED SQL: SELECT `t2`.`key` AS `b.key`, `t2`.`value` AS `b.value`, `t2`.`ds` AS `b.ds`, `t2`.`hr` AS `b.hr`, `t2`.`BLOCK__OFFSET__INSIDE__FILE` AS `b.block__offset__inside__file`
 FROM (SELECT `key`
 FROM `default`.`src`
 WHERE `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/prepare_plan.q.out b/ql/src/test/results/clientpositive/llap/prepare_plan.q.out
index 6d1a0e180c7..60ccab7e26a 100644
--- a/ql/src/test/results/clientpositive/llap/prepare_plan.q.out
+++ b/ql/src/test/results/clientpositive/llap/prepare_plan.q.out
@@ -6,7 +6,7 @@ POSTHOOK: query: explain extended prepare pcount from select count(*) from src w
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT COUNT(*) AS `$f0`
+OPTIMIZED SQL: SELECT COUNT(*) AS `_c0`
 FROM `default`.`src`
 WHERE `key` > CAST(? AS STRING)
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/qualify_distinct.q.out b/ql/src/test/results/clientpositive/llap/qualify_distinct.q.out
index ece005ca56f..730698d3fe4 100644
--- a/ql/src/test/results/clientpositive/llap/qualify_distinct.q.out
+++ b/ql/src/test/results/clientpositive/llap/qualify_distinct.q.out
@@ -42,10 +42,11 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{0, 1, 2}])
-  HiveFilter(condition=[=($3, 1)])
-    HiveProject(a=[$0], b=[$1], c=[$2], row_number_window_0=[row_number() OVER (PARTITION BY $1 ORDER BY $2 NULLS LAST RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)])
-      HiveTableScan(table=[[default, t1]], table:alias=[t1])
+HiveProject(a=[$0], b=[$1], c=[$2])
+  HiveAggregate(group=[{0, 1, 2}])
+    HiveFilter(condition=[=($3, 1)])
+      HiveProject(a=[$0], b=[$1], c=[$2], row_number_window_0=[row_number() OVER (PARTITION BY $1 ORDER BY $2 NULLS LAST RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)])
+        HiveTableScan(table=[[default, t1]], table:alias=[t1])
 
 PREHOOK: query: select a, b, c
   from t1
diff --git a/ql/src/test/results/clientpositive/llap/qualify_gby.q.out b/ql/src/test/results/clientpositive/llap/qualify_gby.q.out
index d8f9f99f0e5..4e9e7cb4e4d 100644
--- a/ql/src/test/results/clientpositive/llap/qualify_gby.q.out
+++ b/ql/src/test/results/clientpositive/llap/qualify_gby.q.out
@@ -44,7 +44,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@t1
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(a=[$0], b=[$1], c=[$2], _o__c3=[$3])
+HiveProject(a=[$0], b=[$1], c=[$2], _c3=[$3])
   HiveFilter(condition=[=($4, 1)])
     HiveProject((tok_table_or_col a)=[$0], (tok_table_or_col b)=[$1], (tok_table_or_col c)=[$2], (tok_functionstar count)=[$3], row_number_window_0=[row_number() OVER (PARTITION BY $1 ORDER BY $2 NULLS LAST RANGE BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING)])
       HiveProject(a=[$0], b=[$1], c=[$2], $f3=[$3])
diff --git a/ql/src/test/results/clientpositive/llap/rand_partitionpruner1.q.out b/ql/src/test/results/clientpositive/llap/rand_partitionpruner1.q.out
index d2d6e58a9fd..5729e51ac8c 100644
--- a/ql/src/test/results/clientpositive/llap/rand_partitionpruner1.q.out
+++ b/ql/src/test/results/clientpositive/llap/rand_partitionpruner1.q.out
@@ -6,7 +6,7 @@ POSTHOOK: query: explain extended select * from src where rand(1) < 0.1
 POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, `value`
+OPTIMIZED SQL: SELECT `key` AS `src.key`, `value` AS `src.value`
 FROM `default`.`src`
 WHERE RAND(1) < 0.1
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/rand_partitionpruner2.q.out b/ql/src/test/results/clientpositive/llap/rand_partitionpruner2.q.out
index d866fc52efa..05ba8e81865 100644
--- a/ql/src/test/results/clientpositive/llap/rand_partitionpruner2.q.out
+++ b/ql/src/test/results/clientpositive/llap/rand_partitionpruner2.q.out
@@ -22,7 +22,7 @@ POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 POSTHOOK: Output: default@tmptable_n1
-OPTIMIZED SQL: SELECT `key`, `value`, CAST('2008-04-08' AS STRING) AS `ds`, `hr`
+OPTIMIZED SQL: SELECT `key` AS `a.key`, `value` AS `a.value`, CAST('2008-04-08' AS STRING) AS `a.ds`, `hr` AS `a.hr`
 FROM `default`.`srcpart`
 WHERE RAND(1) < 0.1 AND `ds` = '2008-04-08'
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/rand_partitionpruner3.q.out b/ql/src/test/results/clientpositive/llap/rand_partitionpruner3.q.out
index 7f3aae3507a..c541873417e 100644
--- a/ql/src/test/results/clientpositive/llap/rand_partitionpruner3.q.out
+++ b/ql/src/test/results/clientpositive/llap/rand_partitionpruner3.q.out
@@ -8,7 +8,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, `value`, CAST('2008-04-08' AS STRING) AS `ds`, `hr`
+OPTIMIZED SQL: SELECT `key` AS `a.key`, `value` AS `a.value`, CAST('2008-04-08' AS STRING) AS `a.ds`, `hr` AS `a.hr`
 FROM `default`.`srcpart`
 WHERE CAST(`key` AS DOUBLE) BETWEEN 10 AND 50 AND RAND(1) < 0.1 AND `ds` = '2008-04-08' AND `hr` LIKE '%2'
 STAGE DEPENDENCIES:
@@ -88,7 +88,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT `key`, `value`, CAST('2008-04-08' AS STRING) AS `ds`, `hr`
+OPTIMIZED SQL: SELECT `key` AS `a.key`, `value` AS `a.value`, CAST('2008-04-08' AS STRING) AS `a.ds`, `hr` AS `a.hr`
 FROM `default`.`srcpart`
 WHERE CAST(`key` AS DOUBLE) BETWEEN 10 AND 50 AND `ds` = '2008-04-08' AND `hr` LIKE '%2'
 STAGE DEPENDENCIES:
diff --git a/ql/src/test/results/clientpositive/llap/router_join_ppr.q.out b/ql/src/test/results/clientpositive/llap/router_join_ppr.q.out
index 860e6addd9a..d1008168c78 100644
--- a/ql/src/test/results/clientpositive/llap/router_join_ppr.q.out
+++ b/ql/src/test/results/clientpositive/llap/router_join_ppr.q.out
@@ -26,7 +26,7 @@ POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT *
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`key` AS `b.key`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`src`
 WHERE `key` > 15 AND `key` < 20 AND `key` IS NOT NULL) AS `t0`
@@ -328,7 +328,7 @@ POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT *
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`key` AS `b.key`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`srcpart`
 WHERE `key` > 15 AND `key` < 20 AND `ds` = '2008-04-08' AND `key` IS NOT NULL) AS `t0`
@@ -630,7 +630,7 @@ POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT *
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`key` AS `b.key`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`src`
 WHERE `key` > 15 AND `key` < 20 AND `key` IS NOT NULL) AS `t0`
@@ -932,7 +932,7 @@ POSTHOOK: Input: default@srcpart
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=11
 POSTHOOK: Input: default@srcpart@ds=2008-04-08/hr=12
 #### A masked pattern was here ####
-OPTIMIZED SQL: SELECT *
+OPTIMIZED SQL: SELECT `t0`.`key` AS `a.key`, `t0`.`value` AS `a.value`, `t2`.`key` AS `b.key`, `t2`.`value` AS `b.value`
 FROM (SELECT `key`, `value`
 FROM `default`.`srcpart`
 WHERE `key` > 15 AND `key` < 20 AND `ds` = '2008-04-08' AND `key` IS NOT NULL) AS `t0`
diff --git a/ql/src/test/results/clientpositive/llap/rule_exclusion_config.q.out b/ql/src/test/results/clientpositive/llap/rule_exclusion_config.q.out
index 6d0dbb432b8..76c1cef4682 100644
--- a/ql/src/test/results/clientpositive/llap/rule_exclusion_config.q.out
+++ b/ql/src/test/results/clientpositive/llap/rule_exclusion_config.q.out
@@ -17,17 +17,18 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@src
 #### A masked pattern was here ####
 CBO PLAN:
-HiveJoin(condition=[=($0, $4)], joinType=[inner], algorithm=[none], cost=[not available])
-  HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
-    HiveProject(key=[$0], value=[$1])
-      HiveFilter(condition=[AND(>(CAST($0):DOUBLE, 1E1), <(CAST($0):DOUBLE, 2E1), IS NOT NULL($0))])
-        HiveTableScan(table=[[default, src]], table:alias=[src1])
+HiveProject(src1.key=[$0], src1.value=[$1], src2.key=[$2], src2.value=[$3], src3.key=[$4], src3.value=[$5])
+  HiveJoin(condition=[=($0, $4)], joinType=[inner], algorithm=[none], cost=[not available])
+    HiveJoin(condition=[=($0, $2)], joinType=[inner], algorithm=[none], cost=[not available])
+      HiveProject(key=[$0], value=[$1])
+        HiveFilter(condition=[AND(>(CAST($0):DOUBLE, 1E1), <(CAST($0):DOUBLE, 2E1), IS NOT NULL($0))])
+          HiveTableScan(table=[[default, src]], table:alias=[src1])
+      HiveProject(key=[$0], value=[$1])
+        HiveFilter(condition=[AND(>(CAST($0):DOUBLE, 1E1), <(CAST($0):DOUBLE, 2E1), IS NOT NULL($0))])
+          HiveTableScan(table=[[default, src]], table:alias=[src2])
     HiveProject(key=[$0], value=[$1])
       HiveFilter(condition=[AND(>(CAST($0):DOUBLE, 1E1), <(CAST($0):DOUBLE, 2E1), IS NOT NULL($0))])
-        HiveTableScan(table=[[default, src]], table:alias=[src2])
-  HiveProject(key=[$0], value=[$1])
-    HiveFilter(condition=[AND(>(CAST($0):DOUBLE, 1E1), <(CAST($0):DOUBLE, 2E1), IS NOT NULL($0))])
-      HiveTableScan(table=[[default, src]], table:alias=[src3])
+        HiveTableScan(table=[[default, src]], table:alias=[src3])
 
 PREHOOK: query: EXPLAIN CBO
 SELECT *
@@ -50,7 +51,7 @@ POSTHOOK: Input: default@src
 Excluded rules: HiveJoinPushTransitivePredicatesRule
 
 CBO PLAN:
-HiveProject(key=[$4], value=[$5], key0=[$2], value0=[$3], key1=[$0], value1=[$1])
+HiveProject(src1.key=[$4], src1.value=[$5], src2.key=[$2], src2.value=[$3], src3.key=[$0], src3.value=[$1])
   HiveJoin(condition=[=($4, $0)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(key=[$0], value=[$1])
       HiveFilter(condition=[IS NOT NULL($0)])
@@ -84,7 +85,7 @@ POSTHOOK: Input: default@src
 Excluded rules: HiveJoinPushTransitivePredicatesRule|HiveJoinAddNotNullRule
 
 CBO PLAN:
-HiveProject(key=[$4], value=[$5], key0=[$2], value0=[$3], key1=[$0], value1=[$1])
+HiveProject(src1.key=[$4], src1.value=[$5], src2.key=[$2], src2.value=[$3], src3.key=[$0], src3.value=[$1])
   HiveJoin(condition=[=($4, $0)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(key=[$0], value=[$1])
       HiveTableScan(table=[[default, src]], table:alias=[src3])
@@ -116,7 +117,7 @@ POSTHOOK: Input: default@src
 Excluded rules: HiveJoin.*Rule
 
 CBO PLAN:
-HiveProject(key=[$4], value=[$5], key0=[$2], value0=[$3], key1=[$0], value1=[$1])
+HiveProject(src1.key=[$4], src1.value=[$5], src2.key=[$2], src2.value=[$3], src3.key=[$0], src3.value=[$1])
   HiveJoin(condition=[=($4, $0)], joinType=[inner], algorithm=[none], cost=[not available])
     HiveProject(key=[$0], value=[$1])
       HiveTableScan(table=[[default, src]], table:alias=[src3])
@@ -148,7 +149,7 @@ POSTHOOK: Input: default@src
 Excluded rules: .*
 
 CBO PLAN:
-HiveProject(key=[$0], value=[$1], key1=[$6], value1=[$7], key2=[$12], value2=[$13])
+HiveProject(src1.key=[$0], src1.value=[$1], src2.key=[$6], src2.value=[$7], src3.key=[$12], src3.value=[$13])
   HiveFilter(condition=[AND(>(CAST($0):DOUBLE, CAST(10):DOUBLE), <(CAST($0):DOUBLE, CAST(20):DOUBLE))])
     HiveJoin(condition=[=($0, $12)], joinType=[inner], algorithm=[none], cost=[not available])
       HiveJoin(condition=[=($0, $6)], joinType=[inner], algorithm=[none], cost=[not available])
diff --git a/ql/src/test/results/clientpositive/llap/semijoin.q.out b/ql/src/test/results/clientpositive/llap/semijoin.q.out
index b121d634152..4f4ba6ef49f 100644
--- a/ql/src/test/results/clientpositive/llap/semijoin.q.out
+++ b/ql/src/test/results/clientpositive/llap/semijoin.q.out
@@ -3479,7 +3479,7 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@part
 #### A masked pattern was here ####
 CBO PLAN:
-HiveProject(p_partkey=[$0])
+HiveProject(pp.p_partkey=[$0])
   HiveSemiJoin(condition=[=($1, $2)], joinType=[semi])
     HiveProject(p_partkey=[$0], p_name=[$1])
       HiveFilter(condition=[IS NOT NULL($1)])
@@ -3541,16 +3541,17 @@ POSTHOOK: type: QUERY
 POSTHOOK: Input: default@part
 #### A masked pattern was here ####
 CBO PLAN:
-HiveAggregate(group=[{}], agg#0=[count()])
-  HiveSemiJoin(condition=[=($0, $1)], joinType=[semi])
-    HiveProject(p_partkey=[$0])
-      HiveFilter(condition=[IS NOT NULL($0)])
-        HiveTableScan(table=[[default, part]], table:alias=[pp])
-    HiveProject(p_partkey=[$0])
-      HiveFilter(condition=[>($2, 1)])
-        HiveAggregate(group=[{0, 1}], agg#0=[count()])
-          HiveFilter(condition=[IS NOT NULL($0)])
-            HiveTableScan(table=[[default, part]], table:alias=[part])
+HiveProject(_c0=[$0])
+  HiveAggregate(group=[{}], agg#0=[count()])
+    HiveSemiJoin(condition=[=($0, $1)], joinType=[semi])
+      HiveProject(p_partkey=[$0])
+        HiveFilter(condition=[IS NOT NULL($0)])
+          HiveTableScan(table=[[default, part]], table:alias=[pp])
+      HiveProject(p_partkey=[$0])
+        HiveFilter(condition=[>($2, 1)])
+          HiveAggregate(group=[{0, 1}], agg#0=[count()])
+            HiveFilter(condition=[IS NOT NULL($0)])
+              HiveTableScan(table=[[default, part]], table:alias=[part])
 
 PREHOOK: query: with ss as
 (select count(1), p_partkey, p_name from
diff --git a/ql/src/test/results/clientpositive/llap/semijoin6.q.out b/ql/src/test/results/clientpositive/llap/semijoin6.q.out
index b1d83766ee8..0c7e9d4f441 100644
--- a/ql/src/test/results/clientpositive/llap/semijoin6.q.out
+++ b/ql/src/test/results/clientpositive/llap/semijoin6.q.out
@@ -158,11 +158,12 @@ POSTHOOK: Input: default@tx1_n1
 POSTHOOK: Input: default@tx2_n0
 #### A masked pattern was here ####
 CBO PLAN:
-HiveSemiJoin(condition=[IS NOT DISTINCT FROM($1, $2)], joinType=[semi])
-  HiveProject(a=[$0], b=[$1])
-    HiveTableScan(table=[[default, tx1_n1]], table:alias=[u])
-  HiveProject(b=[$1])
-    HiveTableScan(table=[[default, tx2_n0]], table:alias=[v])
+HiveProject(u.a=[$0], u.b=[$1])
+  HiveSemiJoin(condition=[IS NOT DISTINCT FROM($1, $2)], joinType=[semi])
... 5682 lines suppressed ...