mirror of
https://mau.dev/maunium/synapse.git
synced 2024-12-22 07:03:51 +01:00
Load events for state group seperately
This commit is contained in:
parent
80fd2b574c
commit
409bcc76bd
2 changed files with 11 additions and 5 deletions
|
@ -867,9 +867,9 @@ class SQLBaseStore(object):
|
||||||
return self.runInteraction("_simple_max_id", func)
|
return self.runInteraction("_simple_max_id", func)
|
||||||
|
|
||||||
def _get_events(self, event_ids, check_redacted=True,
|
def _get_events(self, event_ids, check_redacted=True,
|
||||||
get_prev_content=False):
|
get_prev_content=False, desc="_get_events"):
|
||||||
return self.runInteraction(
|
return self.runInteraction(
|
||||||
"_get_events", self._get_events_txn, event_ids,
|
desc, self._get_events_txn, event_ids,
|
||||||
check_redacted=check_redacted, get_prev_content=get_prev_content,
|
check_redacted=check_redacted, get_prev_content=get_prev_content,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
@ -43,6 +43,7 @@ class StateStore(SQLBaseStore):
|
||||||
* `state_groups_state`: Maps state group to state events.
|
* `state_groups_state`: Maps state group to state events.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
@defer.inlineCallbacks
|
||||||
def get_state_groups(self, event_ids):
|
def get_state_groups(self, event_ids):
|
||||||
""" Get the state groups for the given list of event_ids
|
""" Get the state groups for the given list of event_ids
|
||||||
|
|
||||||
|
@ -71,17 +72,22 @@ class StateStore(SQLBaseStore):
|
||||||
retcol="event_id",
|
retcol="event_id",
|
||||||
)
|
)
|
||||||
|
|
||||||
state = self._get_events_txn(txn, state_ids)
|
# state = self._get_events_txn(txn, state_ids)
|
||||||
|
|
||||||
res[group] = state
|
res[group] = state_ids
|
||||||
|
|
||||||
return res
|
return res
|
||||||
|
|
||||||
return self.runInteraction(
|
states = yield self.runInteraction(
|
||||||
"get_state_groups",
|
"get_state_groups",
|
||||||
f,
|
f,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
for vals in states.values():
|
||||||
|
vals[:] = yield self._get_events(vals, desc="_get_state_groups_ev")
|
||||||
|
|
||||||
|
defer.returnValue(states)
|
||||||
|
|
||||||
def _store_state_groups_txn(self, txn, event, context):
|
def _store_state_groups_txn(self, txn, event, context):
|
||||||
if context.current_state is None:
|
if context.current_state is None:
|
||||||
return
|
return
|
||||||
|
|
Loading…
Reference in a new issue