commit | 26f4d30dbefcc09a7dfe05576d3f9c7b45d822a0 | [log] [tgz] |
---|---|---|
author | shfshihuafeng <shfshihuafeng@163.com> | Wed Mar 06 12:00:30 2024 +0800 |
committer | GitHub <noreply@github.com> | Tue Mar 05 23:00:30 2024 -0500 |
tree | f4123bb06c9852d990298078110e95364cd4c29c | |
parent | 226fe42c14f9f9cdecf1232df50ae604119447a9 [diff] |
DRILL-8479: Merge Join Memory Leak Depleting Incoming Batches Throw Exception (#2878)
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 cd1ba74..ca92ff7 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 @@ 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(); }