diff options
author | David Robertson <davidr@element.io> | 2022-10-01 21:49:12 +0100 |
---|---|---|
committer | David Robertson <davidr@element.io> | 2022-10-01 21:49:12 +0100 |
commit | c7ee636762f03cfa3a1e16461e6746cdc15e578b (patch) | |
tree | 1d4193e43681f1c6c59b0a99e53ca8f533f9a3f9 | |
parent | Separate runInteraction into simple and advanced (diff) | |
download | synapse-c7ee636762f03cfa3a1e16461e6746cdc15e578b.tar.xz |
use `_advanced` function where isolation_level and db_autocommit is in use
-rw-r--r-- | synapse/module_api/__init__.py | 3 | ||||
-rw-r--r-- | synapse/storage/databases/main/end_to_end_keys.py | 2 | ||||
-rw-r--r-- | synapse/storage/databases/main/event_federation.py | 2 | ||||
-rw-r--r-- | synapse/storage/databases/main/lock.py | 2 | ||||
-rw-r--r-- | synapse/storage/databases/main/purge_events.py | 2 | ||||
-rw-r--r-- | synapse/storage/databases/main/receipts.py | 2 | ||||
-rw-r--r-- | synapse/storage/databases/main/transactions.py | 2 | ||||
-rw-r--r-- | synapse/storage/util/id_generators.py | 2 |
8 files changed, 8 insertions, 9 deletions
diff --git a/synapse/module_api/__init__.py b/synapse/module_api/__init__.py index b7b2d3b8c5..5d5a841b69 100644 --- a/synapse/module_api/__init__.py +++ b/synapse/module_api/__init__.py @@ -831,9 +831,8 @@ class ModuleApi: Returns: Deferred[object]: result of func """ - # type-ignore: See https://github.com/python/mypy/issues/8862 return defer.ensureDeferred( - self._store.db_pool.runInteraction(desc, func, *args, **kwargs) # type: ignore[arg-type] + self._store.db_pool.runInteraction(desc, func, *args, **kwargs) ) def register_cached_function(self, cached_func: CachedFunction) -> None: diff --git a/synapse/storage/databases/main/end_to_end_keys.py b/synapse/storage/databases/main/end_to_end_keys.py index 8e9e1b0b4b..91829ee1e4 100644 --- a/synapse/storage/databases/main/end_to_end_keys.py +++ b/synapse/storage/databases/main/end_to_end_keys.py @@ -1082,7 +1082,7 @@ class EndToEndKeyWorkerStore(EndToEndKeyBackgroundStore, CacheInvalidationWorker _claim_e2e_one_time_key = _claim_e2e_one_time_key_simple db_autocommit = False - claim_row = await self.db_pool.runInteraction( + claim_row = await self.db_pool.runInteraction_advanced( "claim_e2e_one_time_keys", _claim_e2e_one_time_key, user_id, diff --git a/synapse/storage/databases/main/event_federation.py b/synapse/storage/databases/main/event_federation.py index 6b9a629edd..f9ead4439a 100644 --- a/synapse/storage/databases/main/event_federation.py +++ b/synapse/storage/databases/main/event_federation.py @@ -1689,7 +1689,7 @@ class EventFederationWorkerStore(SignatureWorkerStore, EventsWorkerStore, SQLBas return row[0] - return await self.db_pool.runInteraction( + return await self.db_pool.runInteraction_advanced( "remove_received_event_from_staging", _remove_received_event_from_staging_txn, db_autocommit=True, diff --git a/synapse/storage/databases/main/lock.py b/synapse/storage/databases/main/lock.py index 7270ef09da..c65bac3efb 100644 --- a/synapse/storage/databases/main/lock.py +++ b/synapse/storage/databases/main/lock.py @@ -162,7 +162,7 @@ class LockStore(SQLBaseStore): # We only acquired the lock if we inserted or updated the table. return bool(txn.rowcount) - did_lock = await self.db_pool.runInteraction( + did_lock = await self.db_pool.runInteraction_advanced( "try_acquire_lock", _try_acquire_lock_txn, # We can autocommit here as we're executing a single query, this diff --git a/synapse/storage/databases/main/purge_events.py b/synapse/storage/databases/main/purge_events.py index 9213ce0b5a..96f95595ad 100644 --- a/synapse/storage/databases/main/purge_events.py +++ b/synapse/storage/databases/main/purge_events.py @@ -325,7 +325,7 @@ class PurgeEventsStore(StateGroupWorkerStore, CacheInvalidationWorkerStore): # We then run the same purge a second time without this isolation level to # purge any of those rows which were added during the first. - state_groups_to_delete = await self.db_pool.runInteraction( + state_groups_to_delete = await self.db_pool.runInteraction_advanced( "purge_room", self._purge_room_txn, room_id=room_id, diff --git a/synapse/storage/databases/main/receipts.py b/synapse/storage/databases/main/receipts.py index 246f78ac1f..55179ef3bb 100644 --- a/synapse/storage/databases/main/receipts.py +++ b/synapse/storage/databases/main/receipts.py @@ -777,7 +777,7 @@ class ReceiptsWorkerStore(SQLBaseStore): ) async with self._receipts_id_gen.get_next() as stream_id: # type: ignore[attr-defined] - event_ts = await self.db_pool.runInteraction( + event_ts = await self.db_pool.runInteraction_advanced( "insert_linearized_receipt", self._insert_linearized_receipt_txn, room_id, diff --git a/synapse/storage/databases/main/transactions.py b/synapse/storage/databases/main/transactions.py index f8c6877ee8..098ec5a1e3 100644 --- a/synapse/storage/databases/main/transactions.py +++ b/synapse/storage/databases/main/transactions.py @@ -221,7 +221,7 @@ class TransactionWorkerStore(CacheInvalidationWorkerStore): retry_interval: how long until next retry in ms """ - await self.db_pool.runInteraction( + await self.db_pool.runInteraction_advanced( "set_destination_retry_timings", self._set_destination_retry_timings_native, destination, diff --git a/synapse/storage/util/id_generators.py b/synapse/storage/util/id_generators.py index 2dfe4c0b66..677c0f8a1f 100644 --- a/synapse/storage/util/id_generators.py +++ b/synapse/storage/util/id_generators.py @@ -818,7 +818,7 @@ class _MultiWriterCtxManager: # for. If we don't do this then we'll often hit serialization errors due # to the fact we default to REPEATABLE READ isolation levels. if self.id_gen._writers: - await self.id_gen._db.runInteraction( + await self.id_gen._db.runInteraction_advanced( "MultiWriterIdGenerator._update_table", self.id_gen._update_stream_positions_table_txn, db_autocommit=True, |