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 43b930e..cec9080 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 @@ -653,7 +653,9 @@ Operator getOptimizedHiveOPDag() throws SemanticException { conf.getVar(HiveConf.ConfVars.HIVEMAPREDMODE).equalsIgnoreCase("strict")).convert(modifiedOptimizedOptiqPlan); RowResolver hiveRootRR = genRowResolver(hiveRoot, getQB()); opParseCtx.put(hiveRoot, new OpParseContext(hiveRootRR)); - return genFileSinkPlan(getQB().getParseInfo().getClauseNames().iterator().next(), getQB(), hiveRoot); + String dest = getQB().getParseInfo().getClauseNames().iterator().next(); + Operator selOp = genSelectPlan(dest, getQB(), hiveRoot, hiveRoot); + return genFileSinkPlan(dest, getQB(), selOp); } private RelNode introduceProjectIfNeeded(RelNode optimizedOptiqPlan) diff --git a/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java b/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java index cc1a3bc..1fb82d4 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java @@ -3586,7 +3586,7 @@ static boolean isRegex(String pattern, HiveConf conf) { } - private Operator genSelectPlan(String dest, QB qb, Operator input, + public Operator genSelectPlan(String dest, QB qb, Operator input, Operator inputForSelectStar) throws SemanticException { ASTNode selExprList = qb.getParseInfo().getSelForClause(dest); Operator op = genSelectPlan(dest, selExprList, qb, input, inputForSelectStar, false);