fix(bridge): resolve websocket zombie connection and bounding memory leaks

This commit is contained in:
Variet Worker
2026-03-23 21:11:52 +09:00
parent e21f71baf8
commit ecebec3906
10 changed files with 110 additions and 25 deletions

5
hub.py
View File

@@ -546,6 +546,11 @@ class WSHub:
payload = data.get("data", {})
request_id = payload.get("request_id", "")
if request_id:
# Prevent slow memory leak for stranded requests
if len(self.pending_owners) > 10000:
oldest = next(iter(self.pending_owners))
self.pending_owners.pop(oldest, None)
# Track ownership for response routing
self.pending_owners[request_id] = conn.conn_id
# Add source metadata