diff options
author | Sean Quah <8349537+squahtx@users.noreply.github.com> | 2023-02-10 23:29:00 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-02-10 23:29:00 +0000 |
commit | d0c713cc85f094c323b2ba3f02d8ac411a7f0705 (patch) | |
tree | c26f279f53c76ea9adb74853d11cfd264675eeb5 /synapse/storage/databases/main/registration.py | |
parent | Support for MSC3758: exact_event_match push condition (#14964) (diff) | |
download | synapse-d0c713cc85f094c323b2ba3f02d8ac411a7f0705.tar.xz |
Return read-only collections from `@cached` methods (#13755)
It's important that collections returned from `@cached` methods are not modified, otherwise future retrievals from the cache will return the modified collection. This applies to the return values from `@cached` methods and the values inside the dictionaries returned by `@cachedList` methods. It's not necessary for the dictionaries returned by `@cachedList` methods themselves to be read-only. Signed-off-by: Sean Quah <seanq@matrix.org> Co-authored-by: David Robertson <davidr@element.io>
Diffstat (limited to 'synapse/storage/databases/main/registration.py')
-rw-r--r-- | synapse/storage/databases/main/registration.py | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/synapse/storage/databases/main/registration.py b/synapse/storage/databases/main/registration.py index 31f0f2bd3d..9a55e17624 100644 --- a/synapse/storage/databases/main/registration.py +++ b/synapse/storage/databases/main/registration.py @@ -16,7 +16,7 @@ import logging import random import re -from typing import TYPE_CHECKING, Any, Dict, List, Optional, Tuple, Union, cast +from typing import TYPE_CHECKING, Any, Dict, List, Mapping, Optional, Tuple, Union, cast import attr @@ -192,7 +192,7 @@ class RegistrationWorkerStore(CacheInvalidationWorkerStore): ) @cached() - async def get_user_by_id(self, user_id: str) -> Optional[Dict[str, Any]]: + async def get_user_by_id(self, user_id: str) -> Optional[Mapping[str, Any]]: """Deprecated: use get_userinfo_by_id instead""" def get_user_by_id_txn(txn: LoggingTransaction) -> Optional[Dict[str, Any]]: |