diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/tez/MapRecordProcessor.java ql/src/java/org/apache/hadoop/hive/ql/exec/tez/MapRecordProcessor.java index dd9b8d2..09bff45 100644 --- ql/src/java/org/apache/hadoop/hive/ql/exec/tez/MapRecordProcessor.java +++ ql/src/java/org/apache/hadoop/hive/ql/exec/tez/MapRecordProcessor.java @@ -172,7 +172,16 @@ void init(MRTaskReporter mrReporter, jconf.set(Utilities.INPUT_NAME, mergeMapWork.getName()); mergeMapOp.initialize(jconf, null); // if there are no files/partitions to read, we need to skip trying to read - boolean skipRead = mergeMapOp.getConf().getPathToAliases().isEmpty(); + MultiMRInput multiMRInput = multiMRInputMap.get(mergeMapWork.getName()); + boolean skipRead = false; + if (multiMRInput == null) { + skipRead = true; + } else { + Collection keyValueReaders = multiMRInput.getKeyValueReaders(); + if ((keyValueReaders == null) || (keyValueReaders.isEmpty())) { + skipRead = true; + } + } if (skipRead) { List> children = new ArrayList>(); children.addAll(mergeMapOp.getConf().getAliasToWork().values());