Class FixedReceiver.Builder

java.lang.Object
org.apache.drill.exec.physical.impl.scan.v3.FixedReceiver.Builder
Enclosing class:
FixedReceiver

public static class FixedReceiver.Builder extends Object
  • Constructor Details

  • Method Details

    • conversionBuilder

      public StandardConversions.Builder conversionBuilder()
      Provides access to the conversion builder to add custom properties.
    • schemaIsComplete

      public FixedReceiver.Builder schemaIsComplete()
      Mark that the reader schema provided to build(TupleMetadata) contains all columns that this reader will deliver. Allows some optimizations. See SchemaNegotiator.schemaIsComplete(boolean).
    • build

      public FixedReceiver build(TupleMetadata readerSchema)
      Create a fixed receiver for the provided schema (if any) in the scan plan, and the given reader schema. Assumes no new columns will be added later in the read.
    • mergeSchemas

      public static TupleMetadata mergeSchemas(TupleMetadata providedSchema, TupleMetadata readerSchema)
      Given a desired provided schema and an actual reader schema, create a merged schema that contains the provided column where available, but the reader column otherwise. Copies provided properties to the output schema.

      The result is the schema to use when creating column writers: it reflects the type of the target vector. The reader is responsible for converting from the (possibly different) reader column type to the provided column type.

      Note: the provided schema should only contain types that the reader is prepared to offer: there is no requirement that the reader support every possible conversion, only those that make sense for that one reader.

      Parameters:
      providedSchema - the provided schema from CREATE SCHEMA
      readerSchema - the set of column types that the reader can provide "natively"
      Returns:
      a merged schema to use when creating the ResultSetLoader