forked from apache/kudu
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
KUDU-2483 Integrate BlockBloomFilter with ColumnPredicate on server side
This change switches the implementation of the ColumnPredicate to use the BlockBloomFilter for the BloomFilter predicate on the server side. Earlier implementation was still experimental and didn't provide public client APIs that actually use this BloomFilter predicate so taken the liberty to make incompatible wire protocol changes. Updated BlockBloomFilter to take hash_algorithm and hash_seed. This make serializing and deserializing the BlockBloomFilter convenient and removes the need of BloomFilterInner in ColumnPredicate. Added overloaded Insert()/Find() functions to BlockBloomFilter that take Slice parameter and hashes the key before insertion/lookup. Most of the change involves refactoring the implementation including the unit tests. Currently only FAST_HASH algorithm is supported since 32-bit versions of MURMUR2 and CITY_HASH are not currently implemented. Change-Id: I7ecfd67e9c5fbe459c5b4aed91e0be2a194d433a Reviewed-on: http://gerrit.cloudera.org:8080/15034 Reviewed-by: Adar Dembo <[email protected]> Tested-by: Adar Dembo <[email protected]> Reviewed-by: helifu <[email protected]>
- Loading branch information
1 parent
ba7c64f
commit 961888d
Showing
15 changed files
with
491 additions
and
376 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.