@@ -344,6 +344,16 @@ mod tests {
344344 use crate :: ParquetVariant ;
345345 use crate :: array:: ParquetVariantArrayExt ;
346346
347+ fn debug_step ( test : & str , step : & str ) {
348+ use std:: io:: Write as _;
349+
350+ println ! (
351+ "[parquet_variant::{test}] {step} thread={:?}" ,
352+ std:: thread:: current( ) . id( )
353+ ) ;
354+ drop ( std:: io:: stdout ( ) . flush ( ) ) ;
355+ }
356+
347357 fn roundtrip ( array : ArrayRef ) -> VortexResult < ArrayRef > {
348358 let dtype = array. dtype ( ) . clone ( ) ;
349359 let len = array. len ( ) ;
@@ -366,6 +376,7 @@ mod tests {
366376
367377 #[ fixture]
368378 fn typed_value_variant_array ( ) -> VortexResult < ArrayRef > {
379+ debug_step ( "typed_value_variant_array" , "building fixture" ) ;
369380 let mut metadata = BinaryViewBuilder :: new ( ) ;
370381 for _ in 0 ..3 {
371382 metadata. append_value ( b"\x01 \x00 " ) ;
@@ -382,27 +393,35 @@ mod tests {
382393 None ,
383394 ) ?;
384395
385- ParquetVariant :: from_arrow_variant ( & ArrowVariantArray :: try_new ( & arrow_storage) ?)
396+ let array =
397+ ParquetVariant :: from_arrow_variant ( & ArrowVariantArray :: try_new ( & arrow_storage) ?) ;
398+ debug_step ( "typed_value_variant_array" , "built fixture" ) ;
399+ array
386400 }
387401
388402 #[ fixture]
389403 fn parquet_variant_file_session ( ) -> VortexSession {
404+ debug_step ( "parquet_variant_file_session" , "building session" ) ;
390405 let session = VortexSession :: empty ( )
391406 . with :: < ArraySession > ( )
392407 . with :: < LayoutSession > ( )
393408 . with :: < RuntimeSession > ( ) ;
394409 vortex_file:: register_default_encodings ( & session) ;
395410 session. arrays ( ) . register ( ParquetVariant ) ;
411+ debug_step ( "parquet_variant_file_session" , "built session" ) ;
396412 session
397413 }
398414
399415 #[ fixture]
400416 fn write_strategy ( ) -> Arc < dyn LayoutStrategy > {
417+ debug_step ( "write_strategy" , "building zoned write strategy" ) ;
401418 let mut allowed = vortex_file:: ALLOWED_ENCODINGS . clone ( ) ;
402419 allowed. insert ( ParquetVariant . id ( ) ) ;
403- vortex_file:: WriteStrategyBuilder :: default ( )
420+ let strategy = vortex_file:: WriteStrategyBuilder :: default ( )
404421 . with_allow_encodings ( allowed)
405- . build ( )
422+ . build ( ) ;
423+ debug_step ( "write_strategy" , "built zoned write strategy" ) ;
424+ strategy
406425 }
407426
408427 #[ test]
@@ -451,24 +470,63 @@ mod tests {
451470 #[ from( typed_value_variant_array) ] expected : VortexResult < ArrayRef > ,
452471 parquet_variant_file_session : VortexSession ,
453472 ) -> VortexResult < ( ) > {
473+ debug_step (
474+ "test_file_roundtrip_typed_value_variant_with_statistics" ,
475+ "start" ,
476+ ) ;
454477 let expected = expected?;
478+ debug_step (
479+ "test_file_roundtrip_typed_value_variant_with_statistics" ,
480+ "resolved expected array" ,
481+ ) ;
455482
456483 let mut bytes = ByteBufferMut :: empty ( ) ;
484+ debug_step (
485+ "test_file_roundtrip_typed_value_variant_with_statistics" ,
486+ "starting flat write" ,
487+ ) ;
457488 parquet_variant_file_session
458489 . write_options ( )
459490 . with_strategy ( Arc :: new ( FlatLayoutStrategy :: default ( ) ) )
460491 . write ( & mut bytes, expected. to_array_stream ( ) )
461492 . await ?;
493+ debug_step (
494+ "test_file_roundtrip_typed_value_variant_with_statistics" ,
495+ & format ! ( "finished flat write bytes_len={}" , bytes. len( ) ) ,
496+ ) ;
462497
463- let actual = parquet_variant_file_session
498+ debug_step (
499+ "test_file_roundtrip_typed_value_variant_with_statistics" ,
500+ "opening buffer" ,
501+ ) ;
502+ let opened = parquet_variant_file_session
464503 . open_options ( )
465- . open_buffer ( bytes) ?
466- . scan ( ) ?
467- . into_array_stream ( ) ?
468- . read_all ( )
469- . await ?;
504+ . open_buffer ( bytes) ?;
505+ debug_step (
506+ "test_file_roundtrip_typed_value_variant_with_statistics" ,
507+ "opened buffer" ,
508+ ) ;
509+ let scan = opened. scan ( ) ?;
510+ debug_step (
511+ "test_file_roundtrip_typed_value_variant_with_statistics" ,
512+ "created scan" ,
513+ ) ;
514+ let stream = scan. into_array_stream ( ) ?;
515+ debug_step (
516+ "test_file_roundtrip_typed_value_variant_with_statistics" ,
517+ "created array stream" ,
518+ ) ;
519+ let actual = stream. read_all ( ) . await ?;
520+ debug_step (
521+ "test_file_roundtrip_typed_value_variant_with_statistics" ,
522+ "read all arrays" ,
523+ ) ;
470524
471525 assert_arrays_eq ! ( expected, actual) ;
526+ debug_step (
527+ "test_file_roundtrip_typed_value_variant_with_statistics" ,
528+ "done" ,
529+ ) ;
472530 Ok ( ( ) )
473531 }
474532
@@ -479,24 +537,63 @@ mod tests {
479537 parquet_variant_file_session : VortexSession ,
480538 write_strategy : Arc < dyn LayoutStrategy > ,
481539 ) -> VortexResult < ( ) > {
540+ debug_step (
541+ "test_file_roundtrip_typed_value_variant_with_zoned_strategy" ,
542+ "start" ,
543+ ) ;
482544 let expected = expected?;
545+ debug_step (
546+ "test_file_roundtrip_typed_value_variant_with_zoned_strategy" ,
547+ "resolved expected array" ,
548+ ) ;
483549
484550 let mut bytes = ByteBufferMut :: empty ( ) ;
551+ debug_step (
552+ "test_file_roundtrip_typed_value_variant_with_zoned_strategy" ,
553+ "starting zoned write" ,
554+ ) ;
485555 parquet_variant_file_session
486556 . write_options ( )
487557 . with_strategy ( write_strategy)
488558 . write ( & mut bytes, expected. to_array_stream ( ) )
489559 . await ?;
560+ debug_step (
561+ "test_file_roundtrip_typed_value_variant_with_zoned_strategy" ,
562+ & format ! ( "finished zoned write bytes_len={}" , bytes. len( ) ) ,
563+ ) ;
490564
491- let actual = parquet_variant_file_session
565+ debug_step (
566+ "test_file_roundtrip_typed_value_variant_with_zoned_strategy" ,
567+ "opening buffer" ,
568+ ) ;
569+ let opened = parquet_variant_file_session
492570 . open_options ( )
493- . open_buffer ( bytes) ?
494- . scan ( ) ?
495- . into_array_stream ( ) ?
496- . read_all ( )
497- . await ?;
571+ . open_buffer ( bytes) ?;
572+ debug_step (
573+ "test_file_roundtrip_typed_value_variant_with_zoned_strategy" ,
574+ "opened buffer" ,
575+ ) ;
576+ let scan = opened. scan ( ) ?;
577+ debug_step (
578+ "test_file_roundtrip_typed_value_variant_with_zoned_strategy" ,
579+ "created scan" ,
580+ ) ;
581+ let stream = scan. into_array_stream ( ) ?;
582+ debug_step (
583+ "test_file_roundtrip_typed_value_variant_with_zoned_strategy" ,
584+ "created array stream" ,
585+ ) ;
586+ let actual = stream. read_all ( ) . await ?;
587+ debug_step (
588+ "test_file_roundtrip_typed_value_variant_with_zoned_strategy" ,
589+ "read all arrays" ,
590+ ) ;
498591
499592 assert_arrays_eq ! ( expected, actual) ;
593+ debug_step (
594+ "test_file_roundtrip_typed_value_variant_with_zoned_strategy" ,
595+ "done" ,
596+ ) ;
500597 Ok ( ( ) )
501598 }
502599
0 commit comments