Move catchup of replication streams to worker. (#7024)
This changes the replication protocol so that the server does not send down `RDATA` for rows that happened before the client connected. Instead, the server will send a `POSITION` and clients then query the database (or master out of band) to get up to date.
Showing
- changelog.d/7024.misc 1 addition, 0 deletionschangelog.d/7024.misc
- docs/tcp_replication.md 13 additions, 33 deletionsdocs/tcp_replication.md
- synapse/app/generic_worker.py 3 additions, 0 deletionssynapse/app/generic_worker.py
- synapse/federation/sender/__init__.py 9 additions, 0 deletionssynapse/federation/sender/__init__.py
- synapse/replication/http/__init__.py 2 additions, 0 deletionssynapse/replication/http/__init__.py
- synapse/replication/http/streams.py 78 additions, 0 deletionssynapse/replication/http/streams.py
- synapse/replication/slave/storage/_base.py 11 additions, 3 deletionssynapse/replication/slave/storage/_base.py
- synapse/replication/slave/storage/pushers.py 3 additions, 0 deletionssynapse/replication/slave/storage/pushers.py
- synapse/replication/tcp/client.py 2 additions, 1 deletionsynapse/replication/tcp/client.py
- synapse/replication/tcp/commands.py 8 additions, 26 deletionssynapse/replication/tcp/commands.py
- synapse/replication/tcp/protocol.py 71 additions, 135 deletionssynapse/replication/tcp/protocol.py
- synapse/replication/tcp/resource.py 12 additions, 7 deletionssynapse/replication/tcp/resource.py
- synapse/replication/tcp/streams/__init__.py 7 additions, 1 deletionsynapse/replication/tcp/streams/__init__.py
- synapse/replication/tcp/streams/_base.py 108 additions, 52 deletionssynapse/replication/tcp/streams/_base.py
- synapse/replication/tcp/streams/events.py 3 additions, 2 deletionssynapse/replication/tcp/streams/events.py
- synapse/replication/tcp/streams/federation.py 14 additions, 5 deletionssynapse/replication/tcp/streams/federation.py
- synapse/server.py 5 additions, 0 deletionssynapse/server.py
- synapse/storage/data_stores/main/cache.py 23 additions, 21 deletionssynapse/storage/data_stores/main/cache.py
- synapse/storage/data_stores/main/deviceinbox.py 44 additions, 44 deletionssynapse/storage/data_stores/main/deviceinbox.py
- synapse/storage/data_stores/main/events.py 0 additions, 114 deletionssynapse/storage/data_stores/main/events.py
Loading
Please register or sign in to comment