@@ -412,7 +412,7 @@ fn select_workload_impl(
412412 let selection = space. global_selection ( cost_model) ;
413413 if let Some ( trace) = trace. as_deref_mut ( ) {
414414 let groups = space. cost_sorted ( cost_model) . iter ( ) . enumerate ( ) . map ( |( index, group) | {
415- let chosen = selection. groups ( ) . find ( |selected| Rc :: ptr_eq ( selected. target , group. target ) )
415+ let chosen = selection. target_selections ( ) . find ( |selected| Rc :: ptr_eq ( selected. target , group. target ) )
416416 . and_then ( |selected| selected. chosen ) ;
417417 let target = TargetSubDAG :: with_consumer_count ( group. target , group. consumer_count ) ;
418418 let candidates = group. candidates . iter ( ) . enumerate ( )
@@ -464,7 +464,7 @@ fn select_workload_impl(
464464 "cost_estimate" : backend_cost_model. and_then( |model| model. candidate_cost_estimate( candidate) ) ,
465465 "selected" : chosen. is_some_and( |chosen| std:: ptr:: eq( chosen, * candidate) ) ,
466466 } ) } ) . collect :: < Vec < _ > > ( ) ;
467- let rejected = space. groups ( ) . find ( |memo| Rc :: ptr_eq ( & memo. target , group. target ) )
467+ let rejected = space. target_subdag_candidates ( ) . find ( |memo| Rc :: ptr_eq ( & memo. target , group. target ) )
468468 . into_iter ( ) . flat_map ( |memo| & memo. rejected ) . map ( |candidate| serde_json:: json!( {
469469 "status" : "rejected" , "strategy" : candidate. strategy,
470470 "description" : candidate. description, "reason" : candidate. error. to_string( )
@@ -480,7 +480,7 @@ fn select_workload_impl(
480480 . iter ( )
481481 . map ( |( id, root) | {
482482 selection
483- . materialize ( root)
483+ . assemble_selected_dag ( root)
484484 . map_err ( |error| SelectionError :: Workload ( error. to_string ( ) ) ) ?
485485 . map ( |node| ( * id, node) )
486486 . ok_or_else ( || SelectionError :: Workload ( format ! ( "missing query root {id}" ) ) )
0 commit comments