Class IdBloomFilterSupplier

java.lang.Object
org.elasticsearch.index.codec.bloomfilter.IdBloomFilterSupplier
All Implemented Interfaces:
Closeable, AutoCloseable

public class IdBloomFilterSupplier extends Object implements Closeable
Owns the DocValuesProducer dedicated to bloom-filter lookups and vends per-caller BloomFilter instances from it.

Thread-safety contract: DocValuesProducer.getBinary(org.apache.lucene.index.FieldInfo) returns a new, independent BinaryDocValues reader on every call, each backed by its own I/O buffer. Callers must therefore invoke createBloomFilterInstance() once per logical lookup context (e.g. once per TermsEnum obtained via Terms.iterator()) and must not share the returned BloomFilter across threads. Sharing a single BloomFilter across threads would race on the mutable buffer state of its underlying RandomAccessInput.

  • Constructor Details

    • IdBloomFilterSupplier

      public IdBloomFilterSupplier(org.apache.lucene.index.SegmentReadState state) throws IOException
      Throws:
      IOException
  • Method Details