From c8b665dc985ae32d9a8f516f4d72e67603c5e26e Mon Sep 17 00:00:00 2001 From: cmcpherson274 Date: Sun, 15 Mar 2026 14:08:43 -0400 Subject: [PATCH] Update last_active timestamp in keepalive logic Update last active timestamp for clients during failover. --- apps/proxy/ts_proxy/stream_generator.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/apps/proxy/ts_proxy/stream_generator.py b/apps/proxy/ts_proxy/stream_generator.py index 95a8143b..cfd705c9 100644 --- a/apps/proxy/ts_proxy/stream_generator.py +++ b/apps/proxy/ts_proxy/stream_generator.py @@ -312,6 +312,11 @@ class StreamGenerator: self.bytes_sent += len(keepalive_packet) self.last_yield_time = time.time() self.consecutive_empty = 0 # Reset consecutive counter but keep total empty_reads + # Update last_active so clients waiting during failover aren't flagged as ghosts + proxy_server = ProxyServer.get_instance() + if proxy_server and proxy_server.redis_client: + client_key = RedisKeys.client_metadata(self.channel_id, self.client_id) + proxy_server.redis_client.hset(client_key, "last_active", str(time.time())) gevent.sleep(Config.KEEPALIVE_INTERVAL) # Replace time.sleep else: # Standard wait with backoff