Class DocValuesDocIdSet

  • All Implemented Interfaces:

    public abstract class DocValuesDocIdSet
    extends DocIdSet
    Base class for DocIdSet to be used with DocValues. The implementation of its iterator is very stupid and slow if the implementation of the matchDoc(int) method is not optimized, as iterators simply increment the document id until matchDoc(int) returns true. Because of this matchDoc(int) must be as fast as possible.
    • Method Detail

      • matchDoc

        protected abstract boolean matchDoc(int doc)
        this method checks, if a doc is a hit
      • ramBytesUsed

        public long ramBytesUsed()
        Description copied from interface: Accountable
        Return the memory usage of this object in bytes. Negative values are illegal.
      • bits

        public final Bits bits()
        Description copied from class: DocIdSet
        Optionally provides a Bits interface for random access to matching documents.
        bits in class DocIdSet
        null, if this DocIdSet does not support random access. In contrast to DocIdSet.iterator(), a return value of null does not imply that no documents match the filter! The default implementation does not provide random access, so you only need to implement this method if your DocIdSet can guarantee random access to every docid in O(1) time without external disk access (as Bits interface cannot throw IOException). This is generally true for bit sets like FixedBitSet, which return itself if they are used as DocIdSet.