File tree Expand file tree Collapse file tree 2 files changed +7
-4
lines changed
banking_stage/transaction_scheduler Expand file tree Collapse file tree 2 files changed +7
-4
lines changed Original file line number Diff line number Diff line change @@ -589,12 +589,13 @@ impl BankingStage {
589589 macro_rules! spawn_scheduler {
590590 ( $scheduler: ident) => {
591591 let exit = exit. clone( ) ;
592+ let shutdown_signal = self . banking_shutdown_signal. clone( ) ;
592593 let bank_forks = self . bank_forks. clone( ) ;
593594 threads. push(
594595 Builder :: new( )
595596 . name( "solBnkTxSched" . to_string( ) )
596597 . spawn( move || {
597- let scheduler_controller = SchedulerController :: new(
598+ let mut scheduler_controller = SchedulerController :: new(
598599 exit,
599600 scheduler_config,
600601 decision_maker,
@@ -606,7 +607,9 @@ impl BankingStage {
606607
607608 match scheduler_controller. run( ) {
608609 Ok ( _) => { }
609- Err ( SchedulerError :: DisconnectedRecvChannel ( _) ) => { }
610+ Err ( SchedulerError :: DisconnectedRecvChannel ( _) ) => {
611+ shutdown_signal. cancel( )
612+ }
610613 Err ( SchedulerError :: DisconnectedSendChannel ( _) ) => {
611614 warn!( "Unexpected worker disconnect from scheduler" )
612615 }
Original file line number Diff line number Diff line change @@ -112,7 +112,7 @@ where
112112 }
113113 }
114114
115- pub fn run ( mut self ) -> Result < ( ) , SchedulerError > {
115+ pub fn run ( & mut self ) -> Result < ( ) , SchedulerError > {
116116 let mut most_recent_leader_slot = None ;
117117 let mut cost_pacer = None ;
118118
@@ -634,7 +634,7 @@ mod tests {
634634 #[ test]
635635 #[ should_panic( expected = "batch id 0 is not being tracked" ) ]
636636 fn test_unexpected_batch_id ( ) {
637- let ( test_frame, scheduler_controller) =
637+ let ( test_frame, mut scheduler_controller) =
638638 create_test_frame ( 1 , test_create_transaction_view_receive_and_buffer) ;
639639 let TestFrame {
640640 finished_consume_work_sender,
You can’t perform that action at this time.
0 commit comments