The paired bloom filter is a plugin module. here is an existing bloom filter test suite called db_bloom_filter_test.cc
To test the paired bloom filter, instead of adding the paired bloom filter as another type of filter that will be tested by db_bloom_filter_test.cc, that file was duplicated in the plugin folder (plugin/speedb/paired_filter), and tests only the paired bloom filter.
The drawbacks are:
Duplication of a lot of code.
The need to update speedb_db_bloom_filter_test.cc whenever db_bloom_filter_test.cc changes.
As part of the rebase on RocksDB 8.6.7, db_bloom_filter_test.cc has undergone significant changes. The corresponding changes were NOT made on speedb_db_bloom_filter_test.cc and it was disabled.
A much better alternative would be to support the testing of the paired bloom filter within db_bloom_filter_test.cc, as another type of filter. The paired bloom filter may still remain a plugin module, and may be created using the "CreateFromString()" capability, as is done, for example, in db_bench.
The paired bloom filter is a plugin module. here is an existing bloom filter test suite called db_bloom_filter_test.cc To test the paired bloom filter, instead of adding the paired bloom filter as another type of filter that will be tested by db_bloom_filter_test.cc, that file was duplicated in the plugin folder (plugin/speedb/paired_filter), and tests only the paired bloom filter. The drawbacks are:
As part of the rebase on RocksDB 8.6.7, db_bloom_filter_test.cc has undergone significant changes. The corresponding changes were NOT made on speedb_db_bloom_filter_test.cc and it was disabled.
A much better alternative would be to support the testing of the paired bloom filter within db_bloom_filter_test.cc, as another type of filter. The paired bloom filter may still remain a plugin module, and may be created using the "CreateFromString()" capability, as is done, for example, in db_bench.