@@ -13,7 +13,7 @@ use crate::messages::control_db::{Database, HostType};
1313use crate :: module_host_context:: ModuleCreationContext ;
1414use crate :: replica_context:: ReplicaContext ;
1515use crate :: subscription:: module_subscription_actor:: ModuleSubscriptions ;
16- use crate :: subscription:: module_subscription_manager:: SubscriptionManager ;
16+ use crate :: subscription:: module_subscription_manager:: { spawn_send_worker , SubscriptionManager } ;
1717use crate :: util:: asyncify;
1818use crate :: util:: jobs:: { JobCore , JobCores } ;
1919use crate :: worker_metrics:: WORKER_METRICS ;
@@ -545,11 +545,17 @@ async fn make_replica_ctx(
545545 relational_db : Arc < RelationalDB > ,
546546) -> anyhow:: Result < ReplicaContext > {
547547 let logger = tokio:: task:: block_in_place ( move || Arc :: new ( DatabaseLogger :: open_today ( path. module_logs ( ) ) ) ) ;
548- let subscriptions = Arc :: new ( parking_lot:: RwLock :: new ( SubscriptionManager :: for_database (
549- database. database_identity ,
548+ let send_worker_queue = spawn_send_worker ( Some ( database. database_identity ) ) ;
549+ let subscriptions = Arc :: new ( parking_lot:: RwLock :: new ( SubscriptionManager :: new (
550+ send_worker_queue. clone ( ) ,
550551 ) ) ) ;
551552 let downgraded = Arc :: downgrade ( & subscriptions) ;
552- let subscriptions = ModuleSubscriptions :: new ( relational_db. clone ( ) , subscriptions, database. owner_identity ) ;
553+ let subscriptions = ModuleSubscriptions :: new (
554+ relational_db. clone ( ) ,
555+ subscriptions,
556+ send_worker_queue,
557+ database. owner_identity ,
558+ ) ;
553559
554560 // If an error occurs when evaluating a subscription,
555561 // we mark each client that was affected,
0 commit comments