This is an automated email from the ASF dual-hosted git repository. rubenql pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/calcite.git
The following commit(s) were added to refs/heads/main by this push: new abf462a7dd [CALCITE-6251] InnerEnumerator in EnumerableDefaults::correlateBatchJoin is not closed abf462a7dd is described below commit abf462a7ddab11a44610827b0cd69510c099d9b6 Author: Ulrich Kramer <u.kra...@sap.com> AuthorDate: Wed Feb 7 14:10:26 2024 +0100 [CALCITE-6251] InnerEnumerator in EnumerableDefaults::correlateBatchJoin is not closed --- .../java/org/apache/calcite/linq4j/EnumerableDefaults.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/linq4j/src/main/java/org/apache/calcite/linq4j/EnumerableDefaults.java b/linq4j/src/main/java/org/apache/calcite/linq4j/EnumerableDefaults.java index 3d2c141574..34819551d8 100644 --- a/linq4j/src/main/java/org/apache/calcite/linq4j/EnumerableDefaults.java +++ b/linq4j/src/main/java/org/apache/calcite/linq4j/EnumerableDefaults.java @@ -1717,6 +1717,8 @@ public abstract class EnumerableDefaults { if (innerEnumerable == null) { innerEnumerable = Linq4j.emptyEnumerable(); } + closeInner(); + Enumerable<TInner> innerEnumerable = requireNonNull(this.innerEnumerable); innerEnumerator = innerEnumerable.enumerator(); innerEnumHasNext = innerEnumerator.moveNext(); @@ -1799,11 +1801,16 @@ public abstract class EnumerableDefaults { i = -1; } - @Override public void close() { - outerEnumerator.close(); + private void closeInner() { if (innerEnumerator != null) { innerEnumerator.close(); + innerEnumerator = null; } + } + + @Override public void close() { + outerEnumerator.close(); + closeInner(); outerValue = null; innerValue = null; }