1. WS disconnect now unsubscribes from user_notification_inner. Previously, every WebSocket connection created a broadcast channel for user notifications that was never removed on disconnect, causing unbounded growth proportional to unique connected users over time. 2. Room worker tasks now use the manager's room_shutdown_txs channel instead of a local broadcast channel. shutdown_room() sends on this channel, so when a room is deleted the worker task receives the signal and terminates, releasing its DashMap (capacity 10,000) and all captured closures. Previously the worker ran forever. |
||
|---|---|---|
| .. | ||
| service | ||
| ai.rs | ||
| category.rs | ||
| connection.rs | ||
| draft_and_history.rs | ||
| error.rs | ||
| helpers.rs | ||
| lib.rs | ||
| member.rs | ||
| message.rs | ||
| metrics.rs | ||
| notification.rs | ||
| pin.rs | ||
| reaction.rs | ||
| room_ai_queue.rs | ||
| room.rs | ||
| search.rs | ||
| thread.rs | ||
| types.rs | ||
| ws_context.rs | ||