mirror of
https://github.com/element-hq/synapse.git
synced 2026-08-15 09:10:32 +00:00
When a worker's replication of a stream stalls, clients whose previous sync was served by a worker ahead of it hand us a token we will never catch up to, `wait_for_stream_token` times out after 10s and `/sync` returns an empty response indefinitely. Nothing metric-side pointed at which stream had stalled (see #20080, where it was `quarantined_media`). Count the timeouts against each stream the token is still ahead of us on, and name those streams (and their positions) in the logs instead of dumping two whole tokens. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>