This is an automated email from the ASF dual-hosted git repository.

blue pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/iceberg.git


The following commit(s) were added to refs/heads/master by this push:
     new e168f59  Parquet: Fix executor memory leak in row group filter (#1139)
e168f59 is described below

commit e168f59d91469e4f6aae32dbb78f8fc504a64eb2
Author: Ryan Blue <[email protected]>
AuthorDate: Mon Jun 29 11:06:41 2020 -0700

    Parquet: Fix executor memory leak in row group filter (#1139)
---
 .../iceberg/parquet/ParquetDictionaryRowGroupFilter.java    | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git 
a/parquet/src/main/java/org/apache/iceberg/parquet/ParquetDictionaryRowGroupFilter.java
 
b/parquet/src/main/java/org/apache/iceberg/parquet/ParquetDictionaryRowGroupFilter.java
index 351fb69..0a3ade8 100644
--- 
a/parquet/src/main/java/org/apache/iceberg/parquet/ParquetDictionaryRowGroupFilter.java
+++ 
b/parquet/src/main/java/org/apache/iceberg/parquet/ParquetDictionaryRowGroupFilter.java
@@ -116,7 +116,18 @@ public class ParquetDictionaryRowGroupFilter {
         }
       }
 
-      return ExpressionVisitors.visitEvaluator(expr, this);
+      try {
+        return ExpressionVisitors.visitEvaluator(expr, this);
+
+      } finally {
+        // allow temporary state to be collected because this is in a 
thread-local
+        this.dictionaries = null;
+        this.dictCache = null;
+        this.isFallback = null;
+        this.mayContainNulls = null;
+        this.cols = null;
+        this.conversions = null;
+      }
     }
 
     @Override

Reply via email to