This is an automated email from the ASF dual-hosted git repository.
lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/paimon.git
The following commit(s) were added to refs/heads/master by this push:
new 7ccc7dd5f [core] Make fields private in BloomFilter
7ccc7dd5f is described below
commit 7ccc7dd5f7d1d19b58e8190dc5e4c1e39083cfe6
Author: Jingsong <[email protected]>
AuthorDate: Sun Apr 7 15:36:15 2024 +0800
[core] Make fields private in BloomFilter
---
.../src/main/java/org/apache/paimon/utils/BloomFilter.java | 11 +++++++----
.../test/java/org/apache/paimon/utils/BloomFilterTest.java | 14 +++++++-------
2 files changed, 14 insertions(+), 11 deletions(-)
diff --git
a/paimon-common/src/main/java/org/apache/paimon/utils/BloomFilter.java
b/paimon-common/src/main/java/org/apache/paimon/utils/BloomFilter.java
index acd4b3050..1cfab654d 100644
--- a/paimon-common/src/main/java/org/apache/paimon/utils/BloomFilter.java
+++ b/paimon-common/src/main/java/org/apache/paimon/utils/BloomFilter.java
@@ -26,17 +26,20 @@ import static
org.apache.paimon.utils.Preconditions.checkArgument;
/** Bloom filter based on one memory segment. */
public class BloomFilter {
- protected BitSet bitSet;
- protected long expectedEntries;
- protected int numHashFunctions;
+ private final BitSet bitSet;
+ private final int numHashFunctions;
public BloomFilter(long expectedEntries, int byteSize) {
checkArgument(expectedEntries > 0, "expectedEntries should be > 0");
- this.expectedEntries = expectedEntries;
this.numHashFunctions = optimalNumOfHashFunctions(expectedEntries,
(long) byteSize << 3);
this.bitSet = new BitSet(byteSize);
}
+ @VisibleForTesting
+ int numHashFunctions() {
+ return numHashFunctions;
+ }
+
public void setMemorySegment(MemorySegment memorySegment, int offset) {
this.bitSet.setMemorySegment(memorySegment, offset);
}
diff --git
a/paimon-common/src/test/java/org/apache/paimon/utils/BloomFilterTest.java
b/paimon-common/src/test/java/org/apache/paimon/utils/BloomFilterTest.java
index a4c0f46dc..2c67f41e6 100644
--- a/paimon-common/src/test/java/org/apache/paimon/utils/BloomFilterTest.java
+++ b/paimon-common/src/test/java/org/apache/paimon/utils/BloomFilterTest.java
@@ -46,19 +46,19 @@ public class BloomFilterTest {
@Test
public void testEstimatedHashFunctions() {
- Assertions.assertThat(BloomFilter.builder(1000,
0.01).getFilter().numHashFunctions)
+ Assertions.assertThat(BloomFilter.builder(1000,
0.01).getFilter().numHashFunctions())
.isEqualTo(7);
- Assertions.assertThat(BloomFilter.builder(10_000,
0.01).getFilter().numHashFunctions)
+ Assertions.assertThat(BloomFilter.builder(10_000,
0.01).getFilter().numHashFunctions())
.isEqualTo(7);
- Assertions.assertThat(BloomFilter.builder(100_000,
0.01).getFilter().numHashFunctions)
+ Assertions.assertThat(BloomFilter.builder(100_000,
0.01).getFilter().numHashFunctions())
.isEqualTo(7);
- Assertions.assertThat(BloomFilter.builder(100_000,
0.01).getFilter().numHashFunctions)
+ Assertions.assertThat(BloomFilter.builder(100_000,
0.01).getFilter().numHashFunctions())
.isEqualTo(7);
- Assertions.assertThat(BloomFilter.builder(100_000,
0.05).getFilter().numHashFunctions)
+ Assertions.assertThat(BloomFilter.builder(100_000,
0.05).getFilter().numHashFunctions())
.isEqualTo(4);
- Assertions.assertThat(BloomFilter.builder(1_000_000,
0.01).getFilter().numHashFunctions)
+ Assertions.assertThat(BloomFilter.builder(1_000_000,
0.01).getFilter().numHashFunctions())
.isEqualTo(7);
- Assertions.assertThat(BloomFilter.builder(1_000_000,
0.05).getFilter().numHashFunctions)
+ Assertions.assertThat(BloomFilter.builder(1_000_000,
0.05).getFilter().numHashFunctions())
.isEqualTo(4);
}