diff options
author | Erik Johnston <erik@matrix.org> | 2019-02-26 15:04:34 +0000 |
---|---|---|
committer | Erik Johnston <erik@matrix.org> | 2019-02-26 15:05:41 +0000 |
commit | 313987187ee04dce5e70db17c1ab9377f283be7e (patch) | |
tree | fc529070b91290f9ea6d31afc652454c23243ecc /docs | |
parent | Merge pull request #4746 from matrix-org/anoa/public_rooms_federate_develop (diff) | |
download | synapse-313987187ee04dce5e70db17c1ab9377f283be7e.tar.xz |
Fix tightloop over connecting to replication server
If the client failed to process incoming commands during the initial set up of the replication connection it would immediately disconnect and reconnect, resulting in a tightloop. This can happen, for example, when subscribing to a stream that has a row that is too long in the backlog. The fix here is to not consider the connection successfully set up until the client has succesfully subscribed and caught up with the streams. This ensures that the retry logic timers aren't reset until then, meaning that if an error does happen during start up the client will continue backing off before retrying again.
Diffstat (limited to 'docs')
-rw-r--r-- | docs/tcp_replication.rst | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/docs/tcp_replication.rst b/docs/tcp_replication.rst index 73436cea62..75e723484c 100644 --- a/docs/tcp_replication.rst +++ b/docs/tcp_replication.rst @@ -188,7 +188,9 @@ RDATA (S) A single update in a stream POSITION (S) - The position of the stream has been updated + The position of the stream has been updated. Sent to the client after all + missing updates for a stream have been sent to the client and they're now + up to date. ERROR (S, C) There was an error |