Akanksha-kedia commented on PR #18898: URL: https://github.com/apache/pinot/pull/18898#issuecomment-4853657638
cc @Jackie-Jiang @klsince @xiangfu0 — requesting your review. ## What this PR does Implements bloom filter rebuild detection when the fpp (false positive probability) config changes (#17137). **Problem:** When a user updates fpp in their bloom filter config, Pinot's segment pre-processor silently kept the old — now misconfigured — bloom filter. Other index types (H3, range, text) already detect config changes and trigger rebuilds; bloom filters were the odd one out. **Approach:** Follows the H3 index resolution change-detection pattern. 1. Reads the numHashFunctions stored in the existing bloom filter's data buffer (byte offset 9) 2. Computes the expected value from the new fpp config: ceil(-ln(fpp) / ln(2)) 3. If they differ → marks the index for rebuild **Files changed:** - BloomFilterHandler.java — added isFppChanged() and computeExpectedNumHashFunctions() hooked into needUpdateIndices() / updateIndices() - SegmentPreProcessorTest.java — added testBloomFilterFppUpdate covering both v1 and v3 segment formats **Change scope:** Purely additive — existing segments with unchanged fpp are unaffected. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
