This is an automated email from the ASF dual-hosted git repository. lzljs3620320 pushed a commit to branch release-1.1 in repository https://gitbox.apache.org/repos/asf/paimon.git
commit 4d533c8463b964b5780b3f9b8a60ae1fc51e8d18 Author: JingsongLi <[email protected]> AuthorDate: Thu May 8 11:42:41 2025 +0800 [hotfix] Make cache in FileStoreScan thread safe --- .../java/org/apache/paimon/operation/AppendOnlyFileStoreScan.java | 4 ++-- .../main/java/org/apache/paimon/operation/KeyValueFileStoreScan.java | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreScan.java b/paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreScan.java index 1498e08a2b..9e4bf12f04 100644 --- a/paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreScan.java +++ b/paimon-core/src/main/java/org/apache/paimon/operation/AppendOnlyFileStoreScan.java @@ -33,8 +33,8 @@ import org.apache.paimon.utils.SnapshotManager; import javax.annotation.Nullable; import java.io.IOException; -import java.util.HashMap; import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; /** {@link FileStoreScan} for {@link AppendOnlyFileStore}. */ public class AppendOnlyFileStoreScan extends AbstractFileStoreScan { @@ -47,7 +47,7 @@ public class AppendOnlyFileStoreScan extends AbstractFileStoreScan { private Predicate filter; // just cache. - private final Map<Long, Predicate> dataFilterMapping = new HashMap<>(); + private final Map<Long, Predicate> dataFilterMapping = new ConcurrentHashMap<>(); public AppendOnlyFileStoreScan( ManifestsReader manifestsReader, diff --git a/paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreScan.java b/paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreScan.java index 22ba024460..9845b01346 100644 --- a/paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreScan.java +++ b/paimon-core/src/main/java/org/apache/paimon/operation/KeyValueFileStoreScan.java @@ -41,9 +41,9 @@ import javax.annotation.Nullable; import java.io.IOException; import java.util.ArrayList; import java.util.Collections; -import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; import static org.apache.paimon.CoreOptions.MergeEngine.AGGREGATE; import static org.apache.paimon.CoreOptions.MergeEngine.PARTIAL_UPDATE; @@ -61,7 +61,7 @@ public class KeyValueFileStoreScan extends AbstractFileStoreScan { private Predicate keyFilter; private Predicate valueFilter; - private final Map<Long, Predicate> schemaId2DataFilter = new HashMap<>(); + private final Map<Long, Predicate> schemaId2DataFilter = new ConcurrentHashMap<>(); private boolean valueFilterForceEnabled = false; public KeyValueFileStoreScan(
