Interface BlockLoader.ColumnAtATimeReader

All Superinterfaces:
AutoCloseable, BlockLoader.Reader, Closeable, Releasable
All Known Implementing Classes:
AbstractBooleansBlockLoader.Singleton, AbstractBytesRefsFromOrdsBlockLoader.Singleton, AbstractBytesRefsFromOrdsBlockLoader.SortedSet, AbstractDoublesFromDocValuesBlockLoader.Singleton, AbstractDoublesFromDocValuesBlockLoader.Sorted, AbstractIntsFromDocValuesBlockLoader.Singleton, AbstractIntsFromDocValuesBlockLoader.Sorted, AbstractLongsFromDocValuesBlockLoader.Singleton, AbstractLongsFromDocValuesBlockLoader.Sorted, BlockDocValuesReader, BytesRefsFromBinaryBlockLoader.BytesRefsFromBinary, BytesRefsFromCustomBinaryBlockLoader.AbstractBytesRefsFromBinary, MultiValuedBinaryWithSeparateCountsLengthReader
Enclosing interface:
BlockLoader

public static interface BlockLoader.ColumnAtATimeReader extends BlockLoader.Reader
Load an entire block at a time.

It's important that these have a nice BlockLoader.Reader.toString(). It's used in the profile.

  • Method Details

    • read

      BlockLoader.Block read(BlockLoader.BlockFactory factory, BlockLoader.Docs docs, int offset, boolean nullsFiltered) throws IOException
      Reads the values of all documents in docs.
      Parameters:
      nullsFiltered - if true, then target docs are guaranteed to have a value for the field; otherwise, the guarantee is unknown. This enables optimizations for block loaders, treating the field as dense (every document has value) even if it is sparse in the index. For example, "FROM index | WHERE x != null | STATS sum(x)", after filtering out documents without value for field x, all target documents returned from the source operator will have a value for field x whether x is dense or sparse in the index.
      Throws:
      IOException