in src/context.rs [669:689]
fn read_avro(
&self,
path: &str,
schema: Option<PyArrowType<Schema>>,
table_partition_cols: Vec<(String, String)>,
file_extension: &str,
py: Python,
) -> PyResult<PyDataFrame> {
let mut options = AvroReadOptions::default()
.table_partition_cols(convert_table_partition_cols(table_partition_cols)?);
options.file_extension = file_extension;
let df = if let Some(schema) = schema {
options.schema = Some(&schema.0);
let read_future = self.ctx.read_avro(path, options);
wait_for_future(py, read_future).map_err(DataFusionError::from)?
} else {
let read_future = self.ctx.read_avro(path, options);
wait_for_future(py, read_future).map_err(DataFusionError::from)?
};
Ok(PyDataFrame::new(df))
}