@@ -102,6 +102,7 @@ def has_session(self, session_id: str):
102102
103103 async def delete_session (self , session_id ):
104104 session_actor_ref = self ._session_refs .pop (session_id )
105+ await session_actor_ref .remove ()
105106 await mo .destroy_actor (session_actor_ref )
106107
107108 # sync removing to other managers
@@ -113,6 +114,10 @@ async def delete_session(self, session_id):
113114 )
114115 await session_manager_ref .remove_session_ref (session_id )
115116
117+ async def delete_all_sessions (self ):
118+ for session_id in list (self ._session_refs ):
119+ await self .delete_session (session_id )
120+
116121 async def get_last_idle_time (self , session_id = None ):
117122 if session_id is not None :
118123 session = self ._session_refs [session_id ]
@@ -160,10 +165,12 @@ async def __post_create__(self):
160165 uid = CustomLogMetaActor .gen_uid (self ._session_id ),
161166 )
162167
163- async def __pre_destroy__ (self ):
168+ async def remove (self ):
164169 await destroy_service_session (
165170 NodeRole .SUPERVISOR , self ._service_config , self ._session_id , self .address
166171 )
172+
173+ async def __pre_destroy__ (self ):
167174 await mo .destroy_actor (self ._custom_log_meta_ref )
168175
169176 async def create_services (self ):
0 commit comments