Class SparkAvroReader

java.lang.Object
org.apache.iceberg.spark.data.SparkAvroReader
All Implemented Interfaces:
org.apache.avro.io.DatumReader<org.apache.spark.sql.catalyst.InternalRow>, SupportsRowPosition

public class SparkAvroReader extends Object implements org.apache.avro.io.DatumReader<org.apache.spark.sql.catalyst.InternalRow>, SupportsRowPosition
  • Constructor Details

    • SparkAvroReader

      public SparkAvroReader(Schema expectedSchema, org.apache.avro.Schema readSchema)
    • SparkAvroReader

      public SparkAvroReader(Schema expectedSchema, org.apache.avro.Schema readSchema, Map<Integer,?> constants)
  • Method Details

    • setSchema

      public void setSchema(org.apache.avro.Schema newFileSchema)
      Specified by:
      setSchema in interface org.apache.avro.io.DatumReader<org.apache.spark.sql.catalyst.InternalRow>
    • read

      public org.apache.spark.sql.catalyst.InternalRow read(org.apache.spark.sql.catalyst.InternalRow reuse, org.apache.avro.io.Decoder decoder) throws IOException
      Specified by:
      read in interface org.apache.avro.io.DatumReader<org.apache.spark.sql.catalyst.InternalRow>
      Throws:
      IOException
    • setRowPositionSupplier

      public void setRowPositionSupplier(Supplier<Long> posSupplier)
      Specified by:
      setRowPositionSupplier in interface SupportsRowPosition