mirror of
https://github.com/pyMC-dev/pyMC_Repeater.git
synced 2026-11-04 12:22:26 +01:00
A hot reload from PUT /api/update_identity re-runs TextHelper.register_identity, which replaced self.room_servers[hash] and started a new sync loop without stopping the old one, so the room pushed posts twice (the old loop with its stale ACL). Take the RoomServer under the same hash, and any registered under another hash by the same or previous name (a key change), out of room_servers, and stop them before starting the replacement, on the running loop or via run_coroutine_threadsafe from a request thread. update_identity passes the original name through _register_identity_everywhere as previous_name.