@@ -323,6 +323,7 @@ impl CdfLoadBuilder {
323
323
pub ( crate ) async fn build (
324
324
& self ,
325
325
session_sate : & SessionState ,
326
+ filters : Option < & Arc < dyn PhysicalExpr > > ,
326
327
) -> DeltaResult < Arc < dyn ExecutionPlan > > {
327
328
let ( cdc, add, remove) = self . determine_files_to_read ( ) . await ?;
328
329
register_store ( self . log_store . clone ( ) , session_sate. runtime_env ( ) . clone ( ) ) ;
@@ -388,7 +389,7 @@ impl CdfLoadBuilder {
388
389
table_partition_cols : cdc_partition_cols,
389
390
output_ordering : vec ! [ ] ,
390
391
} ,
391
- None ,
392
+ filters ,
392
393
)
393
394
. await ?;
394
395
@@ -406,7 +407,7 @@ impl CdfLoadBuilder {
406
407
table_partition_cols : add_remove_partition_cols. clone ( ) ,
407
408
output_ordering : vec ! [ ] ,
408
409
} ,
409
- None ,
410
+ filters ,
410
411
)
411
412
. await ?;
412
413
@@ -424,7 +425,7 @@ impl CdfLoadBuilder {
424
425
table_partition_cols : add_remove_partition_cols,
425
426
output_ordering : vec ! [ ] ,
426
427
} ,
427
- None ,
428
+ filters ,
428
429
)
429
430
. await ?;
430
431
@@ -502,7 +503,7 @@ pub(crate) mod tests {
502
503
. await ?
503
504
. load_cdf ( )
504
505
. with_starting_version ( 0 )
505
- . build ( & ctx. state ( ) )
506
+ . build ( & ctx. state ( ) , None )
506
507
. await ?;
507
508
508
509
let batches = collect_batches (
@@ -553,7 +554,7 @@ pub(crate) mod tests {
553
554
. load_cdf ( )
554
555
. with_starting_version ( 0 )
555
556
. with_ending_timestamp ( starting_timestamp. and_utc ( ) )
556
- . build ( & ctx. state ( ) )
557
+ . build ( & ctx. state ( ) , None )
557
558
. await
558
559
. unwrap ( ) ;
559
560
@@ -599,7 +600,7 @@ pub(crate) mod tests {
599
600
. await ?
600
601
. load_cdf ( )
601
602
. with_starting_version ( 0 )
602
- . build ( & ctx. state ( ) )
603
+ . build ( & ctx. state ( ) , None )
603
604
. await ?;
604
605
605
606
let batches = collect_batches (
@@ -652,7 +653,7 @@ pub(crate) mod tests {
652
653
. load_cdf ( )
653
654
. with_starting_version ( 4 )
654
655
. with_ending_version ( 1 )
655
- . build ( & ctx. state ( ) )
656
+ . build ( & ctx. state ( ) , None )
656
657
. await ;
657
658
658
659
assert ! ( table. is_err( ) ) ;
@@ -671,7 +672,7 @@ pub(crate) mod tests {
671
672
. await ?
672
673
. load_cdf ( )
673
674
. with_starting_version ( 5 )
674
- . build ( & ctx. state ( ) )
675
+ . build ( & ctx. state ( ) , None )
675
676
. await ;
676
677
677
678
assert ! ( table. is_err( ) ) ;
@@ -691,7 +692,7 @@ pub(crate) mod tests {
691
692
. load_cdf ( )
692
693
. with_starting_version ( 5 )
693
694
. with_allow_out_of_range ( )
694
- . build ( & ctx. state ( ) )
695
+ . build ( & ctx. state ( ) , None )
695
696
. await ?;
696
697
697
698
let batches = collect_batches (
@@ -714,7 +715,7 @@ pub(crate) mod tests {
714
715
. await ?
715
716
. load_cdf ( )
716
717
. with_starting_timestamp ( ending_timestamp. and_utc ( ) )
717
- . build ( & ctx. state ( ) )
718
+ . build ( & ctx. state ( ) , None )
718
719
. await ;
719
720
720
721
assert ! ( table. is_err( ) ) ;
@@ -735,7 +736,7 @@ pub(crate) mod tests {
735
736
. load_cdf ( )
736
737
. with_starting_timestamp ( ending_timestamp. and_utc ( ) )
737
738
. with_allow_out_of_range ( )
738
- . build ( & ctx. state ( ) )
739
+ . build ( & ctx. state ( ) , None )
739
740
. await ?;
740
741
741
742
let batches = collect_batches (
@@ -757,7 +758,7 @@ pub(crate) mod tests {
757
758
. await ?
758
759
. load_cdf ( )
759
760
. with_starting_version ( 0 )
760
- . build ( & ctx. state ( ) )
761
+ . build ( & ctx. state ( ) , None )
761
762
. await ;
762
763
763
764
assert ! ( table. is_err( ) ) ;
@@ -777,7 +778,7 @@ pub(crate) mod tests {
777
778
. await ?
778
779
. load_cdf ( )
779
780
. with_starting_timestamp ( ending_timestamp. and_utc ( ) )
780
- . build ( & ctx. state ( ) )
781
+ . build ( & ctx. state ( ) , None )
781
782
. await ?;
782
783
783
784
let batches = collect_batches (
@@ -868,7 +869,7 @@ pub(crate) mod tests {
868
869
let cdf_scan = DeltaOps ( table. clone ( ) )
869
870
. load_cdf ( )
870
871
. with_starting_version ( 0 )
871
- . build ( & ctx. state ( ) )
872
+ . build ( & ctx. state ( ) , None )
872
873
. await
873
874
. expect ( "Failed to load CDF" ) ;
874
875
0 commit comments