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

gabor pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/parquet-mr.git


The following commit(s) were added to refs/heads/master by this push:
     new e6bca6f  PARQUET-1964: FOLLOWUP: Avoid constructing useless ArrayList 
(#855)
e6bca6f is described below

commit e6bca6f72db5b450c074676ac20dae9e33e93695
Author: Yuming Wang <[email protected]>
AuthorDate: Wed Feb 3 16:31:45 2021 +0800

    PARQUET-1964: FOLLOWUP: Avoid constructing useless ArrayList (#855)
---
 .../apache/parquet/hadoop/ParquetFileReader.java   | 27 +++++++++++-----------
 1 file changed, 13 insertions(+), 14 deletions(-)

diff --git 
a/parquet-hadoop/src/main/java/org/apache/parquet/hadoop/ParquetFileReader.java 
b/parquet-hadoop/src/main/java/org/apache/parquet/hadoop/ParquetFileReader.java
index b13d336..0cb6660 100644
--- 
a/parquet-hadoop/src/main/java/org/apache/parquet/hadoop/ParquetFileReader.java
+++ 
b/parquet-hadoop/src/main/java/org/apache/parquet/hadoop/ParquetFileReader.java
@@ -851,23 +851,22 @@ public class ParquetFileReader implements Closeable {
   }
 
   private List<BlockMetaData> filterRowGroups(List<BlockMetaData> blocks) 
throws IOException {
-    // set up data filters based on configured levels
-    List<RowGroupFilter.FilterLevel> levels = new ArrayList<>();
-
-    if (options.useStatsFilter()) {
-      levels.add(STATISTICS);
-    }
+    FilterCompat.Filter recordFilter = options.getRecordFilter();
+    if (FilterCompat.isFilteringRequired(recordFilter)) {
+      // set up data filters based on configured levels
+      List<RowGroupFilter.FilterLevel> levels = new ArrayList<>();
 
-    if (options.useDictionaryFilter()) {
-      levels.add(DICTIONARY);
-    }
+      if (options.useStatsFilter()) {
+        levels.add(STATISTICS);
+      }
 
-    if (options.useBloomFilter()) {
-      levels.add(BLOOMFILTER);
-    }
+      if (options.useDictionaryFilter()) {
+        levels.add(DICTIONARY);
+      }
 
-    FilterCompat.Filter recordFilter = options.getRecordFilter();
-    if (FilterCompat.isFilteringRequired(recordFilter)) {
+      if (options.useBloomFilter()) {
+        levels.add(BLOOMFILTER);
+      }
       return RowGroupFilter.filterRowGroups(levels, recordFilter, blocks, 
this);
     }
 

Reply via email to