Author: rhbutani Date: Fri Sep 12 14:35:17 2014 New Revision: 1624560 URL: http://svn.apache.org/r1624560 Log: HIVE-8069 CBO: RowResolver after SubQuery predicate handling should be reset to outer query block RR (Harish Butani via John Pullokkaran)
Modified: hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java Modified: hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java?rev=1624560&r1=1624559&r2=1624560&view=diff ============================================================================== --- hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java (original) +++ hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java Fri Sep 12 14:35:17 2014 @@ -12496,6 +12496,9 @@ public class SemanticAnalyzer extends Ba List<ASTNode> subQueries = SubQueryUtils.findSubQueries(clonedSearchCond); RowResolver inputRR = relToHiveRR.get(srcRel); + RowResolver outerQBRR = inputRR; + ImmutableMap<String, Integer> outerQBPosMap = + relToHiveColNameOptiqPosMap.get(srcRel); for (int i = 0; i < subQueries.size(); i++) { ASTNode subQueryAST = subQueries.get(i); @@ -12586,6 +12589,8 @@ public class SemanticAnalyzer extends Ba srcRel = projectLeftOuterSide(srcRel, numSrcColumns); } } + relToHiveRR.put(srcRel, outerQBRR); + relToHiveColNameOptiqPosMap.put(srcRel, outerQBPosMap); return srcRel; }