mirror of
https://mau.dev/maunium/synapse.git
synced 2024-12-14 05:53:45 +01:00
Merge pull request #3795 from matrix-org/erikj/faster_sync_state
User iter* during sync state calculations
This commit is contained in:
commit
ee7c8bd2b5
2 changed files with 9 additions and 8 deletions
1
changelog.d/3795.misc
Normal file
1
changelog.d/3795.misc
Normal file
|
@ -0,0 +1 @@
|
|||
Make /sync slightly faster by avoiding needless copies
|
|
@ -1729,17 +1729,17 @@ def _calculate_state(
|
|||
event_id_to_key = {
|
||||
e: key
|
||||
for key, e in itertools.chain(
|
||||
timeline_contains.items(),
|
||||
previous.items(),
|
||||
timeline_start.items(),
|
||||
current.items(),
|
||||
iteritems(timeline_contains),
|
||||
iteritems(previous),
|
||||
iteritems(timeline_start),
|
||||
iteritems(current),
|
||||
)
|
||||
}
|
||||
|
||||
c_ids = set(e for e in current.values())
|
||||
ts_ids = set(e for e in timeline_start.values())
|
||||
p_ids = set(e for e in previous.values())
|
||||
tc_ids = set(e for e in timeline_contains.values())
|
||||
c_ids = set(e for e in itervalues(current))
|
||||
ts_ids = set(e for e in itervalues(timeline_start))
|
||||
p_ids = set(e for e in itervalues(previous))
|
||||
tc_ids = set(e for e in itervalues(timeline_contains))
|
||||
|
||||
# If we are lazyloading room members, we explicitly add the membership events
|
||||
# for the senders in the timeline into the state block returned by /sync,
|
||||
|
|
Loading…
Reference in a new issue