diff --git a/exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/join/MergeJoinBatch.java b/exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/join/MergeJoinBatch.java index cd1ba748c93..ca92ff702b4 100644 --- a/exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/join/MergeJoinBatch.java +++ b/exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/join/MergeJoinBatch.java @@ -297,7 +297,14 @@ public void close() { batchMemoryManager.getAvgOutputRowWidth(), batchMemoryManager.getTotalOutputRecords()); super.close(); - leftIterator.close(); + try { + leftIterator.close(); + } catch (Exception e) { + rightIterator.close(); + throw UserException.executionError(e) + .message("Failed to close Iterator.") + .build(logger); + } rightIterator.close(); }