forked from MirrorHub/synapse
Prefill the device_list_stream_cache (#12367)
* Prefill the device_list_stream_cache * Newsfile * Newsfile
This commit is contained in:
parent
5c9e39e619
commit
b446c99ac9
3 changed files with 23 additions and 2 deletions
1
changelog.d/12367.feature
Normal file
1
changelog.d/12367.feature
Normal file
|
@ -0,0 +1 @@
|
|||
Reduce overhead of restarting synchrotrons.
|
|
@ -48,8 +48,18 @@ class SlavedDeviceStore(EndToEndKeyWorkerStore, DeviceWorkerStore, BaseSlavedSto
|
|||
],
|
||||
)
|
||||
device_list_max = self._device_list_id_gen.get_current_token()
|
||||
device_list_prefill, min_device_list_id = self.db_pool.get_cache_dict(
|
||||
db_conn,
|
||||
"device_lists_stream",
|
||||
entity_column="user_id",
|
||||
stream_column="stream_id",
|
||||
max_value=device_list_max,
|
||||
limit=1000,
|
||||
)
|
||||
self._device_list_stream_cache = StreamChangeCache(
|
||||
"DeviceListStreamChangeCache", device_list_max
|
||||
"DeviceListStreamChangeCache",
|
||||
min_device_list_id,
|
||||
prefilled_cache=device_list_prefill,
|
||||
)
|
||||
self._user_signature_stream_cache = StreamChangeCache(
|
||||
"UserSignatureStreamChangeCache", device_list_max
|
||||
|
|
|
@ -184,8 +184,18 @@ class DataStore(
|
|||
super().__init__(database, db_conn, hs)
|
||||
|
||||
device_list_max = self._device_list_id_gen.get_current_token()
|
||||
device_list_prefill, min_device_list_id = self.db_pool.get_cache_dict(
|
||||
db_conn,
|
||||
"device_lists_stream",
|
||||
entity_column="user_id",
|
||||
stream_column="stream_id",
|
||||
max_value=device_list_max,
|
||||
limit=1000,
|
||||
)
|
||||
self._device_list_stream_cache = StreamChangeCache(
|
||||
"DeviceListStreamChangeCache", device_list_max
|
||||
"DeviceListStreamChangeCache",
|
||||
min_device_list_id,
|
||||
prefilled_cache=device_list_prefill,
|
||||
)
|
||||
self._user_signature_stream_cache = StreamChangeCache(
|
||||
"UserSignatureStreamChangeCache", device_list_max
|
||||
|
|
Loading…
Reference in a new issue