diff --cc ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java index 4b1a033,7c1c853..0000000 --- ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java +++ ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java @@@ -12495,7 -12484,8 +12495,10 @@@ public class SemanticAnalyzer extends B ASTNode clonedSearchCond = (ASTNode) SubQueryUtils.adaptor.dupTree(searchCond); List subQueries = SubQueryUtils.findSubQueries(clonedSearchCond); - RowResolver inputRR = m_relToHiveRR.get(srcRel); + RowResolver inputRR = relToHiveRR.get(srcRel); + RowResolver outerQBRR = inputRR; ++ ImmutableMap outerQBPosMap = ++ relToHiveColNameOptiqPosMap.get(srcRel); for (int i = 0; i < subQueries.size(); i++) { ASTNode subQueryAST = subQueries.get(i); @@@ -12586,6 -12576,7 +12589,8 @@@ srcRel = projectLeftOuterSide(srcRel, numSrcColumns); } } - m_relToHiveRR.put(srcRel, outerQBRR); ++ relToHiveRR.put(srcRel, outerQBRR); ++ relToHiveColNameOptiqPosMap.put(srcRel, outerQBPosMap); return srcRel; }