[ https://issues.apache.org/jira/browse/PHOENIX-7229?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Viraj Jasani resolved PHOENIX-7229. ----------------------------------- Resolution: Fixed > Leverage bloom filters for single key point lookups > --------------------------------------------------- > > Key: PHOENIX-7229 > URL: https://issues.apache.org/jira/browse/PHOENIX-7229 > Project: Phoenix > Issue Type: Improvement > Affects Versions: 5.1.3 > Reporter: Tanuj Khurana > Assignee: Tanuj Khurana > Priority: Major > Fix For: 5.2.0 > > > PHOENIX-6710 enabled bloom filters by default when Phoenix tables are > created. However, we were not making use of it because Phoenix translates > point lookups to scans with the scan range [startkey, stopkey) where startkey > is inclusive and is equal to the row key and stopkey is exclusive and is the > next key after the row key. > This fails the check inside the hbase code in > [StoreFileReader#passesBloomFilter|https://github.com/apache/hbase/blob/master/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/StoreFileReader.java#L245-L250] > because it applies bloom filter only to scans which are gets and a scan is a > GET only if startkey = stopkey and both are inclusive. This is defined here > [Scan#isGetScan|https://github.com/apache/hbase/blob/master/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Scan.java#L253-L255] > We recently have some customers whose use case involves doing point lookups > where the row key is not going to be present in the table. Bloom filters are > ideal for those use cases. > We can change our scan range for point lookups to leverage Bloom filters. -- This message was sent by Atlassian Jira (v8.20.10#820010)