From 38c94c1c45d025baeb1fea9f640ff38320b02a53 Mon Sep 17 00:00:00 2001 From: Ozgur Akkurt Date: Thu, 2 Feb 2023 21:30:43 +0300 Subject: [PATCH 1/2] rename factory param to reader_factory --- src/io/parquet/read/row_group.rs | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/io/parquet/read/row_group.rs b/src/io/parquet/read/row_group.rs index e17dba30fed..7de993a74f6 100644 --- a/src/io/parquet/read/row_group.rs +++ b/src/io/parquet/read/row_group.rs @@ -139,14 +139,14 @@ where } async fn _read_single_column_async<'b, R, F>( - factory: F, + reader_factory: F, meta: &ColumnChunkMetaData, ) -> Result<(&ColumnChunkMetaData, Vec)> where R: AsyncRead + AsyncSeek + Send + Unpin, F: Fn() -> BoxFuture<'b, std::io::Result>, { - let mut reader = factory().await?; + let mut reader = reader_factory().await?; let (start, length) = meta.byte_range(); reader.seek(std::io::SeekFrom::Start(start)).await?; @@ -169,13 +169,13 @@ pub async fn read_columns_async< R: AsyncRead + AsyncSeek + Send + Unpin, F: Fn() -> BoxFuture<'b, std::io::Result> + Clone, >( - factory: F, + reader_factory: F, columns: &'a [ColumnChunkMetaData], field_name: &str, ) -> Result)>> { let futures = get_field_columns(columns, field_name) .into_iter() - .map(|meta| async { _read_single_column_async(factory.clone(), meta).await }); + .map(|meta| async { _read_single_column_async(reader_factory.clone(), meta).await }); try_join_all(futures).await } @@ -261,7 +261,7 @@ pub fn to_deserializer<'a>( /// (e.g. implement [`Clone`]) you can use [`read_columns`] to read multiple columns at once /// and convert them to [`ArrayIter`] via [`to_deserializer`]. pub fn read_columns_many<'a, R: Read + Seek>( - reader: &mut R, + reader_factory: &mut R, row_group: &RowGroupMetaData, fields: Vec, chunk_size: Option, @@ -275,7 +275,7 @@ pub fn read_columns_many<'a, R: Read + Seek>( // This operation is IO-bounded `O(C)` where C is the number of columns in the row group let field_columns = fields .iter() - .map(|field| read_columns(reader, row_group.columns(), &field.name)) + .map(|field| read_columns(reader_factory, row_group.columns(), &field.name)) .collect::>>()?; if let Some(pages) = pages { @@ -309,7 +309,7 @@ pub async fn read_columns_many_async< R: AsyncRead + AsyncSeek + Send + Unpin, F: Fn() -> BoxFuture<'b, std::io::Result> + Clone, >( - factory: F, + reader_factory: F, row_group: &RowGroupMetaData, fields: Vec, chunk_size: Option, @@ -321,7 +321,7 @@ pub async fn read_columns_many_async< let futures = fields .iter() - .map(|field| read_columns_async(factory.clone(), row_group.columns(), &field.name)); + .map(|field| read_columns_async(reader_factory.clone(), row_group.columns(), &field.name)); let field_columns = try_join_all(futures).await?; From c935552dfa961f7cb2303f684eee9992b9ef6a39 Mon Sep 17 00:00:00 2001 From: Ozgur Akkurt Date: Fri, 3 Feb 2023 00:30:17 +0300 Subject: [PATCH 2/2] fix mistake --- src/io/parquet/read/row_group.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/io/parquet/read/row_group.rs b/src/io/parquet/read/row_group.rs index 7de993a74f6..176c6e83182 100644 --- a/src/io/parquet/read/row_group.rs +++ b/src/io/parquet/read/row_group.rs @@ -261,7 +261,7 @@ pub fn to_deserializer<'a>( /// (e.g. implement [`Clone`]) you can use [`read_columns`] to read multiple columns at once /// and convert them to [`ArrayIter`] via [`to_deserializer`]. pub fn read_columns_many<'a, R: Read + Seek>( - reader_factory: &mut R, + reader: &mut R, row_group: &RowGroupMetaData, fields: Vec, chunk_size: Option, @@ -275,7 +275,7 @@ pub fn read_columns_many<'a, R: Read + Seek>( // This operation is IO-bounded `O(C)` where C is the number of columns in the row group let field_columns = fields .iter() - .map(|field| read_columns(reader_factory, row_group.columns(), &field.name)) + .map(|field| read_columns(reader, row_group.columns(), &field.name)) .collect::>>()?; if let Some(pages) = pages {