Class BlockConverter

java.lang.Object
org.elasticsearch.xpack.esql.arrow.BlockConverter
Direct Known Subclasses:
BlockConverter.AsBoolean, BlockConverter.AsFloat64, BlockConverter.AsInt32, BlockConverter.AsInt64, BlockConverter.AsNull, BlockConverter.BytesRefConverter

public abstract class BlockConverter extends Object
  • Constructor Details

    • BlockConverter

      protected BlockConverter(String esqlType, org.apache.arrow.vector.types.Types.MinorType minorType)
  • Method Details

    • esqlType

      public final String esqlType()
    • arrowFieldType

      public final org.apache.arrow.vector.types.pojo.FieldType arrowFieldType()
    • nullValuesCount

      protected int nullValuesCount(Block block)
    • convert

      public abstract void convert(Block block, boolean multivalued, List<org.apache.arrow.memory.ArrowBuf> bufs, List<BlockConverter.BufWriter> bufWriters)
      Convert a block into Arrow buffers.
      Parameters:
      block - the ESQL block
      multivalued - is this column multivalued? This block may not, but some blocks in that column are.
      bufs - arrow buffers, used to track sizes
      bufWriters - buffer writers, that will do the actual work of writing the data