This is an automated email from the ASF dual-hosted git repository. junhao pushed a commit to branch cacheLess in repository https://gitbox.apache.org/repos/asf/paimon.git
commit a04ac41ea9ff69897453dcbd518aadfceaff96f9 Author: 仟弋 <[email protected]> AuthorDate: Tue Sep 3 15:27:00 2024 +0800 [core] FileBasedBloomFilter should be pass private member to cache manager. --- .../src/main/java/org/apache/paimon/utils/FileBasedBloomFilter.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/paimon-common/src/main/java/org/apache/paimon/utils/FileBasedBloomFilter.java b/paimon-common/src/main/java/org/apache/paimon/utils/FileBasedBloomFilter.java index f80ba301e..e384ceb03 100644 --- a/paimon-common/src/main/java/org/apache/paimon/utils/FileBasedBloomFilter.java +++ b/paimon-common/src/main/java/org/apache/paimon/utils/FileBasedBloomFilter.java @@ -58,12 +58,13 @@ public class FileBasedBloomFilter { // we should refresh cache in LRU, but we cannot refresh everytime, it is costly. // so we introduce a refresh count to reduce refresh if (accessCount == REFRESH_COUNT || filter.getMemorySegment() == null) { + final BloomFilter bloomFilter = filter; MemorySegment segment = cacheManager.getPage( CacheKey.forPosition(input.file(), readOffset, readLength), key -> input.readPosition(readOffset, readLength), - key -> filter.unsetMemorySegment()); - filter.setMemorySegment(segment, 0); + key -> bloomFilter.unsetMemorySegment()); + bloomFilter.setMemorySegment(segment, 0); accessCount = 0; } return filter.testHash(hash);
