@@ -13,7 +13,7 @@ use ipc_channel::ipc::{IpcReceiver, IpcSender};
1313use log:: error;
1414use serde:: de:: DeserializeOwned ;
1515use serde:: { Deserialize , Serialize } ;
16- use tokio:: runtime:: { Builder , Runtime } ;
16+ use tokio:: runtime:: Builder ;
1717use tokio:: sync:: oneshot:: Sender ;
1818use tokio:: sync:: { oneshot, watch, Mutex , Notify , RwLock } ;
1919use tokio_util:: sync:: CancellationToken ;
@@ -391,7 +391,7 @@ where
391391 let stack_size = env_parse ( "CUBESTORE_SELECT_WORKER_STACK_SIZE" , 4 * 1024 * 1024 ) ;
392392 tokio_builder. thread_stack_size ( stack_size) ;
393393 let runtime = tokio_builder. build ( ) . unwrap ( ) ;
394- worker_setup ( & runtime) ;
394+ C :: setup ( & runtime) ;
395395 runtime. block_on ( async move {
396396 let services_client = S :: connect ( services_sender, services_reciever, timeout) ;
397397 let config = match C :: configure ( services_client) . await {
@@ -438,24 +438,6 @@ where
438438 } )
439439}
440440
441- fn worker_setup ( runtime : & Runtime ) {
442- let startup = SELECT_WORKER_SETUP . read ( ) . unwrap ( ) ;
443- if startup. is_some ( ) {
444- startup. as_ref ( ) . unwrap ( ) ( runtime) ;
445- }
446- }
447-
448- lazy_static ! {
449- static ref SELECT_WORKER_SETUP : std:: sync:: RwLock <Option <Box <dyn Fn ( & Runtime ) + Send + Sync >>> =
450- std:: sync:: RwLock :: new( None ) ;
451- }
452-
453- pub fn register_select_worker_setup ( f : fn ( & Runtime ) ) {
454- let mut setup = SELECT_WORKER_SETUP . write ( ) . unwrap ( ) ;
455- assert ! ( setup. is_none( ) , "select worker setup already registered" ) ;
456- * setup = Some ( Box :: new ( f) ) ;
457- }
458-
459441#[ cfg( test) ]
460442mod tests {
461443 use std:: sync:: Arc ;
@@ -466,7 +448,7 @@ mod tests {
466448 use datafusion:: logical_plan:: ToDFSchema ;
467449 use futures_timer:: Delay ;
468450 use serde:: { Deserialize , Serialize } ;
469- use tokio:: runtime:: Builder ;
451+ use tokio:: runtime:: { Builder , Runtime } ;
470452
471453 use crate :: cluster:: worker_pool:: { worker_main, WorkerPool } ;
472454 use crate :: config:: Config ;
@@ -506,6 +488,7 @@ mod tests {
506488 type Config = Config ;
507489 type ServicesRequest = ( ) ;
508490 type ServicesResponse = ( ) ;
491+ fn setup ( _runtime : & Runtime ) { }
509492 async fn configure (
510493 _services_client : Arc < dyn Callable < Request = ( ) , Response = ( ) > > ,
511494 ) -> Result < Self :: Config , CubeError > {
@@ -708,6 +691,9 @@ mod tests {
708691 type Config = TestConfig ;
709692 type ServicesRequest = i64 ;
710693 type ServicesResponse = bool ;
694+
695+ fn setup ( _runtime : & Runtime ) { }
696+
711697 async fn configure (
712698 services_client : Arc < dyn Callable < Request = i64 , Response = bool > > ,
713699 ) -> Result < Self :: Config , CubeError > {
0 commit comments