diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/OperatorUtils.java ql/src/java/org/apache/hadoop/hive/ql/exec/OperatorUtils.java index 41507b1..997cb67 100644 --- ql/src/java/org/apache/hadoop/hive/ql/exec/OperatorUtils.java +++ ql/src/java/org/apache/hadoop/hive/ql/exec/OperatorUtils.java @@ -83,7 +83,7 @@ public static T findSingleOperatorUpstreamJoinAccounted(Operator start, Class clazz) { Set found = findOperatorsUpstreamJoinAccounted(start, clazz, new HashSet()); - return found.size() == 1 ? found.iterator().next(): null; + return found.size() >= 1 ? found.iterator().next(): null; } public static Set findOperatorsUpstream(Collection> starts, Class clazz) { @@ -118,8 +118,10 @@ MapJoinDesc desc = (MapJoinDesc) mapJoinOp.getConf(); onlyIncludeIndex = desc.getPosBigTable(); } + LOG.info("Starting with parent list."); if (start.getParentOperators() != null) { int i = 0; + LOG.info("Parent ops are: " + start.getParentOperators()); for (Operator parent : start.getParentOperators()) { if (onlyIncludeIndex >= 0) { if (onlyIncludeIndex == i) { @@ -131,6 +133,7 @@ i++; } } + LOG.info("We found these: " + found); return found; }