diff options
author | Erik Johnston <erik@matrix.org> | 2019-10-30 14:58:44 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-10-30 14:58:44 +0100 |
commit | b7fe62b7660eb5836878d888937bcb327659cfd2 (patch) | |
tree | 5e0beaa14d2e9abc82116a7a07740abf2508177b /synapse/server.py | |
parent | Merge pull request #6291 from matrix-org/erikj/fix_cache_descriptor (diff) | |
parent | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/split_out_... (diff) | |
download | synapse-b7fe62b7660eb5836878d888937bcb327659cfd2.tar.xz |
Merge pull request #6240 from matrix-org/erikj/split_out_persistence_store
Move persist_events out from main data store.
Diffstat (limited to 'synapse/server.py')
-rw-r--r-- | synapse/server.py | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/synapse/server.py b/synapse/server.py index 1fcc7375d3..0b81af646c 100644 --- a/synapse/server.py +++ b/synapse/server.py @@ -95,6 +95,7 @@ from synapse.server_notices.worker_server_notices_sender import ( WorkerServerNoticesSender, ) from synapse.state import StateHandler, StateResolutionHandler +from synapse.storage import DataStores, Storage from synapse.streams.events import EventSources from synapse.util import Clock from synapse.util.distributor import Distributor @@ -196,6 +197,7 @@ class HomeServer(object): "account_validity_handler", "saml_handler", "event_client_serializer", + "storage", ] REQUIRED_ON_MASTER_STARTUP = ["user_directory_handler", "stats_handler"] @@ -224,7 +226,7 @@ class HomeServer(object): self.admin_redaction_ratelimiter = Ratelimiter() self.registration_ratelimiter = Ratelimiter() - self.datastore = None + self.datastores = None # Other kwargs are explicit dependencies for depname in kwargs: @@ -233,7 +235,8 @@ class HomeServer(object): def setup(self): logger.info("Setting up.") with self.get_db_conn() as conn: - self.datastore = self.DATASTORE_CLASS(conn, self) + datastore = self.DATASTORE_CLASS(conn, self) + self.datastores = DataStores(datastore, conn, self) conn.commit() logger.info("Finished setting up.") @@ -266,7 +269,7 @@ class HomeServer(object): return self.clock def get_datastore(self): - return self.datastore + return self.datastores.main def get_config(self): return self.config @@ -537,6 +540,9 @@ class HomeServer(object): def build_event_client_serializer(self): return EventClientSerializer(self) + def build_storage(self) -> Storage: + return Storage(self, self.datastores) + def remove_pusher(self, app_id, push_key, user_id): return self.get_pusherpool().remove_pusher(app_id, push_key, user_id) |