@@ -46,7 +46,7 @@ use tokio::runtime::Handle;
4646/// println!("Found Blob with {}B at {}", meta.size, meta.location);
4747///
4848/// // Show Parquet metadata
49- /// let reader = ParquetObjectReader::new(storage_container, meta.location).with_file_size(meta.size);
49+ /// let reader = ParquetObjectReader::new(storage_container, meta.location).with_file_size(meta.size.try_into().unwrap() );
5050/// let builder = ParquetRecordBatchStreamBuilder::new(reader).await.unwrap();
5151/// print_parquet_metadata(&mut stdout(), builder.metadata());
5252/// # }
@@ -163,7 +163,7 @@ impl ParquetObjectReader {
163163impl MetadataSuffixFetch for & mut ParquetObjectReader {
164164 fn fetch_suffix ( & mut self , suffix : usize ) -> BoxFuture < ' _ , Result < Bytes > > {
165165 let options = GetOptions {
166- range : Some ( GetRange :: Suffix ( suffix) ) ,
166+ range : Some ( GetRange :: Suffix ( suffix as u64 ) ) ,
167167 ..Default :: default ( )
168168 } ;
169169 self . spawn ( |store, path| {
@@ -178,13 +178,18 @@ impl MetadataSuffixFetch for &mut ParquetObjectReader {
178178
179179impl AsyncFileReader for ParquetObjectReader {
180180 fn get_bytes ( & mut self , range : Range < usize > ) -> BoxFuture < ' _ , Result < Bytes > > {
181+ let range = range. start as u64 ..range. end as u64 ;
181182 self . spawn ( |store, path| store. get_range ( path, range) )
182183 }
183184
184185 fn get_byte_ranges ( & mut self , ranges : Vec < Range < usize > > ) -> BoxFuture < ' _ , Result < Vec < Bytes > > >
185186 where
186187 Self : Send ,
187188 {
189+ let ranges = ranges
190+ . into_iter ( )
191+ . map ( |range| range. start as u64 ..range. end as u64 )
192+ . collect :: < Vec < _ > > ( ) ;
188193 self . spawn ( |store, path| async move { store. get_ranges ( path, & ranges) . await } . boxed ( ) )
189194 }
190195
@@ -254,8 +259,8 @@ mod tests {
254259 #[ tokio:: test]
255260 async fn test_simple ( ) {
256261 let ( meta, store) = get_meta_store ( ) . await ;
257- let object_reader =
258- ParquetObjectReader :: new ( store , meta . location ) . with_file_size ( meta. size ) ;
262+ let object_reader = ParquetObjectReader :: new ( store , meta . location )
263+ . with_file_size ( meta. size . try_into ( ) . unwrap ( ) ) ;
259264
260265 let builder = ParquetRecordBatchStreamBuilder :: new ( object_reader)
261266 . await
@@ -285,8 +290,8 @@ mod tests {
285290 let ( mut meta, store) = get_meta_store ( ) . await ;
286291 meta. location = Path :: from ( "I don't exist.parquet" ) ;
287292
288- let object_reader =
289- ParquetObjectReader :: new ( store , meta . location ) . with_file_size ( meta. size ) ;
293+ let object_reader = ParquetObjectReader :: new ( store , meta . location )
294+ . with_file_size ( meta. size . try_into ( ) . unwrap ( ) ) ;
290295 // Cannot use unwrap_err as ParquetRecordBatchStreamBuilder: !Debug
291296 match ParquetRecordBatchStreamBuilder :: new ( object_reader) . await {
292297 Ok ( _) => panic ! ( "expected failure" ) ,
@@ -320,7 +325,7 @@ mod tests {
320325 let initial_actions = num_actions. load ( Ordering :: Relaxed ) ;
321326
322327 let reader = ParquetObjectReader :: new ( store, meta. location )
323- . with_file_size ( meta. size )
328+ . with_file_size ( meta. size . try_into ( ) . unwrap ( ) )
324329 . with_runtime ( rt. handle ( ) . clone ( ) ) ;
325330
326331 let builder = ParquetRecordBatchStreamBuilder :: new ( reader) . await . unwrap ( ) ;
@@ -348,7 +353,7 @@ mod tests {
348353 let ( meta, store) = get_meta_store ( ) . await ;
349354
350355 let reader = ParquetObjectReader :: new ( store, meta. location )
351- . with_file_size ( meta. size )
356+ . with_file_size ( meta. size . try_into ( ) . unwrap ( ) )
352357 . with_runtime ( rt. handle ( ) . clone ( ) ) ;
353358
354359 let current_id = std:: thread:: current ( ) . id ( ) ;
@@ -373,7 +378,7 @@ mod tests {
373378 let ( meta, store) = get_meta_store ( ) . await ;
374379
375380 let mut reader = ParquetObjectReader :: new ( store, meta. location )
376- . with_file_size ( meta. size )
381+ . with_file_size ( meta. size . try_into ( ) . unwrap ( ) )
377382 . with_runtime ( rt. handle ( ) . clone ( ) ) ;
378383
379384 rt. shutdown_background ( ) ;
0 commit comments