0
0
Fork 1
mirror of https://mau.dev/maunium/synapse.git synced 2024-11-17 07:21:37 +01:00
synapse/tests
Erik Johnston 8de3703d21
Make event persisters periodically announce position over replication. (#8499)
Currently background proccesses stream the events stream use the "minimum persisted position" (i.e. `get_current_token()`) rather than the vector clock style tokens. This is broadly fine as it doesn't matter if the background processes lag a small amount. However, in extreme cases (i.e. SyTests) where we only write to one event persister the background processes will never make progress.

This PR changes it so that the `MultiWriterIDGenerator` keeps the current position of a given instance as up to date as possible (i.e using the latest token it sees if its not in the process of persisting anything), and then periodically announces that over replication. This then allows the "minimum persisted position" to advance, albeit with a small lag.
2020-10-12 15:51:41 +01:00
..
api Remove the deprecated Handlers object (#8494) 2020-10-09 07:24:34 -04:00
app Create a ListenerConfig object (#7681) 2020-06-16 12:44:07 +01:00
appservice Convert appservice to async. (#7973) 2020-07-30 07:27:39 -04:00
config Use the default templates when a custom template file cannot be found (#8037) 2020-08-17 17:05:00 +01:00
crypto Remove the deprecated Handlers object (#8494) 2020-10-09 07:24:34 -04:00
events Convert the message handler to async/await. (#7884) 2020-07-22 12:29:15 -04:00
federation Catch-up after Federation Outage (bonus): Catch-up on Synapse Startup (#8322) 2020-09-18 14:59:13 +01:00
handlers Remove the deprecated Handlers object (#8494) 2020-10-09 07:24:34 -04:00
http Fix handling of connection timeouts in outgoing http requests (#8400) 2020-09-29 10:29:21 +01:00
logging Stop sub-classing object (#8249) 2020-09-04 06:54:56 -04:00
module_api Allow modules to create and send events into rooms (#8479) 2020-10-09 13:46:36 +01:00
push Stop sub-classing object (#8249) 2020-09-04 06:54:56 -04:00
replication Remove the deprecated Handlers object (#8494) 2020-10-09 07:24:34 -04:00
rest Allow modules to create and send events into rooms (#8479) 2020-10-09 13:46:36 +01:00
scripts
server_notices Allow for make_awaitable's return value to be re-used. (#8261) 2020-09-08 07:26:55 -04:00
state Stop sub-classing object (#8249) 2020-09-04 06:54:56 -04:00
storage Make event persisters periodically announce position over replication. (#8499) 2020-10-12 15:51:41 +01:00
test_utils Update test logging to be able to accept braces (#8335) 2020-09-18 07:56:40 -04:00
util Stop sub-classing object (#8249) 2020-09-04 06:54:56 -04:00
__init__.py
server.py Clean-up some broken/unused code in the test framework (#8514) 2020-10-09 14:19:29 -04:00
test_distributor.py
test_event_auth.py Implement room version 6 (MSC2240). (#7506) 2020-05-15 09:30:10 -04:00
test_federation.py Remove the deprecated Handlers object (#8494) 2020-10-09 07:24:34 -04:00
test_mau.py Fix some spelling mistakes / typos. (#7811) 2020-07-09 09:52:58 -04:00
test_metrics.py Allow configuration of Synapse's cache without using synctl or environment variables (#6391) 2020-05-11 18:45:23 +01:00
test_phone_home.py Allow background tasks to be run on a separate worker. (#8369) 2020-10-02 08:23:15 -04:00
test_preview.py
test_server.py Iteratively encode JSON responses to avoid blocking the reactor. (#8013) 2020-08-18 08:49:59 -04:00
test_state.py Simplify super() calls to Python 3 syntax. (#8344) 2020-09-18 09:56:44 -04:00
test_terms_auth.py Replace all remaining six usage with native Python 3 equivalents (#7704) 2020-06-16 08:51:47 -04:00
test_test_utils.py
test_types.py
test_visibility.py Stop sub-classing object (#8249) 2020-09-04 06:54:56 -04:00
unittest.py kill off send_nonmember_event 2020-10-05 19:04:10 +01:00
utils.py Clean-up some broken/unused code in the test framework (#8514) 2020-10-09 14:19:29 -04:00