synapse-product/synapse/storage
Erik Johnston 782e4e64df
Shuffle persist event data store functions. (#7440)
The aim here is to get to a stage where we have a `PersistEventStore` that holds all the write methods used during event persistence, so that we can take that class out of the `DataStore` mixin and instansiate it separately. This will allow us to instansiate it on processes other than master, while also ensuring it is only available on processes that are configured to write to events stream.

This is a bit of an architectural change, where we end up with multiple classes per data store (rather than one per data store we have now). We end up having:

1. Storage classes that provide high level APIs that can talk to multiple data stores.
2. Data store modules that consist of classes that must point at the same database instance.
3. Classes in a data store that can be instantiated on processes depending on config.
2020-05-13 13:38:22 +01:00
..
data_stores Shuffle persist event data store functions. (#7440) 2020-05-13 13:38:22 +01:00
engines Persist user interactive authentication sessions (#7302) 2020-04-30 13:47:49 -04:00
schema Only run one background update at a time 2020-03-31 17:43:58 +01:00
util Add MultiWriterIdGenerator. (#7281) 2020-05-04 17:17:45 +01:00
__init__.py Move are_all_users_on_domain checks to main data store. 2019-12-06 13:43:40 +00:00
_base.py Support any process writing to cache invalidation stream. (#7436) 2020-05-07 13:51:08 +01:00
background_updates.py Update docstring per review comments 2020-04-03 10:51:32 +01:00
database.py Fix new flake8 errors (#7470) 2020-05-12 11:20:48 +01:00
keys.py Move storage classes into a main "data store". 2019-10-21 16:05:06 +01:00
persist_events.py Shuffle persist event data store functions. (#7440) 2020-05-13 13:38:22 +01:00
prepare_database.py Support any process writing to cache invalidation stream. (#7436) 2020-05-07 13:51:08 +01:00
presence.py Move storage classes into a main "data store". 2019-10-21 16:05:06 +01:00
purge_events.py Fix purge_room admin API (#6711) 2020-01-15 18:13:47 +00:00
push_rule.py Move storage classes into a main "data store". 2019-10-21 16:05:06 +01:00
relations.py Move storage classes into a main "data store". 2019-10-21 16:05:06 +01:00
roommember.py Move storage classes into a main "data store". 2019-10-21 16:05:06 +01:00
state.py Add StateMap type alias (#6715) 2020-01-16 13:31:22 +00:00
types.py Add some type annotations in synapse.storage (#6987) 2020-02-27 11:53:40 +00:00