Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Move server command handling out of TCP protocol (#7187) | Erik Johnston | 2020-04-07 | 1 | -137/+26 |
| | | | This completes the merging of server and client command processing. | ||||
* | Remove connections per replication stream metric. (#7195) | Erik Johnston | 2020-04-01 | 1 | -16/+0 |
| | | | | | This broke in a recent PR (#7024) and is no longer useful due to all replication clients implicitly subscribing to all streams, so let's just remove it. | ||||
* | Remove usage of "conn_id" for presence. (#7128) | Erik Johnston | 2020-03-30 | 1 | -10/+7 |
| | | | | | | | | | | | | | | | | * Remove `conn_id` usage for UserSyncCommand. Each tcp replication connection is assigned a "conn_id", which is used to give an ID to a remotely connected worker. In a redis world, there will no longer be a one to one mapping between connection and instance, so instead we need to replace such usages with an ID generated by the remote instances and included in the replicaiton commands. This really only effects UserSyncCommand. * Add CLEAR_USER_SYNCS command that is sent on shutdown. This should help with the case where a synchrotron gets restarted gracefully, rather than rely on 5 minute timeout. | ||||
* | Move catchup of replication streams to worker. (#7024) | Erik Johnston | 2020-03-25 | 1 | -7/+12 |
| | | | 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. | ||||
* | Remove concept of a non-limited stream. (#7011) | Erik Johnston | 2020-03-20 | 1 | -7/+2 |
| | |||||
* | Port PresenceHandler to async/await (#6991) | Erik Johnston | 2020-02-26 | 1 | -1/+5 |
| | |||||
* | Propagate cache invalidates from workers to other workers. (#6748) | Erik Johnston | 2020-01-27 | 1 | -3/+6 |
| | | | Currently if a worker invalidates a cache it will be streamed to master, which then didn't forward those to other workers. | ||||
* | Wake up transaction queue when remote server comes back online (#6706) | Erik Johnston | 2020-01-17 | 1 | -0/+9 |
| | | | | | This will be used to retry outbound transactions to a remote server if we think it might have come back up. | ||||
* | Port synapse.replication.tcp to async/await (#6666) | Erik Johnston | 2020-01-16 | 1 | -17/+14 |
| | | | | | | | | | | * Port synapse.replication.tcp to async/await * Newsfile * Correctly document type of on_<FOO> functions as async * Don't be overenthusiastic with the asyncing.... | ||||
* | Fixup synapse.replication to pass mypy checks (#6667) | Erik Johnston | 2020-01-14 | 1 | -1/+2 |
| | |||||
* | Run Black. (#5482) | Amber Brown | 2019-06-20 | 1 | -20/+34 |
| | |||||
* | move FederationStream out to its own file | Richard van der Hoff | 2019-03-27 | 1 | -1/+2 |
| | |||||
* | Fix ClientReplicationStreamProtocol.__str__ (#4929) | Richard van der Hoff | 2019-03-25 | 1 | -1/+0 |
| | | | | | | | | `__str__` depended on `self.addr`, which was absent from ClientReplicationStreamProtocol, so attempting to call str on such an object would raise an exception. We can calculate the peer addr from the transport, so there is no need for addr anyway. | ||||
* | Add a config option for torture-testing worker replication. (#4902) | Richard van der Hoff | 2019-03-20 | 1 | -1/+17 |
| | | | Setting this to 50 or so makes a bunch of sytests fail in worker mode. | ||||
* | Wrap a number of things that run in the background | Richard van der Hoff | 2018-07-25 | 1 | -6/+8 |
| | | | | | This will reduce the number of "Starting db connection from sentinel context" warnings, and will help with our metrics. | ||||
* | run isort | Amber Brown | 2018-07-09 | 1 | -8/+9 |
| | |||||
* | Remove all global reactor imports & pass it around explicitly (#3424) | Amber Brown | 2018-06-25 | 1 | -2/+2 |
| | |||||
* | Merge remote-tracking branch 'origin/develop' into 3218-official-prom | Amber Brown | 2018-05-28 | 1 | -1/+2 |
|\ | |||||
| * | Merge pull request #3244 from NotAFile/py3-six-4 | Amber Brown | 2018-05-24 | 1 | -1/+2 |
| |\ | | | | | | | replace some iteritems with six | ||||
| | * | replace some iteritems with six | Adrian Tschira | 2018-05-19 | 1 | -1/+2 |
| | | | | | | | | | | | | Signed-off-by: Adrian Tschira <nota@notafile.com> | ||||
* | | | more cleanup | Amber Brown | 2018-05-22 | 1 | -3/+4 |
| | | | |||||
* | | | cleanups, self-registration | Amber Brown | 2018-05-22 | 1 | -4/+5 |
| | | | |||||
* | | | Merge remote-tracking branch 'origin/develop' into 3218-official-prom | Amber Brown | 2018-05-22 | 1 | -0/+2 |
|\| | | |||||
| * | | Send users a server notice about consent | Richard van der Hoff | 2018-05-22 | 1 | -0/+2 |
| |/ | | | | | | | | | When a user first syncs, we will send them a server notice asking them to consent to the privacy policy if they have not already done so. | ||||
* / | rest of the changes | Amber Brown | 2018-05-21 | 1 | -16/+14 |
|/ | |||||
* | make imports local | Adrian Tschira | 2018-04-28 | 1 | -2/+2 |
| | | | | Signed-off-by: Adrian Tschira <nota@notafile.com> | ||||
* | Fix some logcontext leaks in replication resource | Richard van der Hoff | 2017-11-23 | 1 | -2/+4 |
| | | | | | The @measure_func annotations rely on the wrapped function respecting the logcontext rules. Add the necessary yields to make this work. | ||||
* | replace 'except:' with 'except Exception:' | Richard van der Hoff | 2017-10-23 | 1 | -1/+1 |
| | | | | what could possibly go wrong | ||||
* | log when we get an exception handling replication updates | hera | 2017-10-12 | 1 | -1/+5 |
| | |||||
* | Make workers report to master for user ip updates | Erik Johnston | 2017-06-27 | 1 | -0/+10 |
| | |||||
* | Add missing notifier | Erik Johnston | 2017-06-09 | 1 | -1/+2 |
| | |||||
* | Advance replication streams even if nothing is listening | Erik Johnston | 2017-04-04 | 1 | -1/+1 |
| | | | | | | Otherwise the streams don't advance and steadily fall behind, so when a worker does connect either a) they'll be streamed lots of old updates or b) the connection will fail as the streams are too far behind. | ||||
* | Always advance stream tokens | Erik Johnston | 2017-04-03 | 1 | -1/+4 |
| | |||||
* | Use callbacks to notify tcp replication rather than deferreds | Erik Johnston | 2017-03-31 | 1 | -14/+1 |
| | |||||
* | Add a timestamp to USER_SYNC command | Erik Johnston | 2017-03-31 | 1 | -2/+2 |
| | | | | This timestamp is used to indicate when the user last sync'd | ||||
* | Add server side resource for tcp replication | Erik Johnston | 2017-03-30 | 1 | -0/+300 |