diff options
author | Travis Ralston <travpc@gmail.com> | 2018-10-12 14:49:58 -0600 |
---|---|---|
committer | Travis Ralston <travpc@gmail.com> | 2018-10-12 14:49:58 -0600 |
commit | e3586f7c06f3c779e87f9ea3bf4e4ac549a451c9 (patch) | |
tree | 2ef1ecdb2f2c6641a81a47adf51fda62343be7e3 /synapse/visibility.py | |
parent | Remove debugging statement (diff) | |
parent | Make workers work on Py3 (#4027) (diff) | |
download | synapse-e3586f7c06f3c779e87f9ea3bf4e4ac549a451c9.tar.xz |
Merge branch 'develop' into travis/fix-federated-group-requests
Diffstat (limited to 'synapse/visibility.py')
-rw-r--r-- | synapse/visibility.py | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/synapse/visibility.py b/synapse/visibility.py index d4680863d3..c64ad2144c 100644 --- a/synapse/visibility.py +++ b/synapse/visibility.py @@ -324,14 +324,13 @@ def filter_events_for_server(store, server_name, events): # server's domain. # # event_to_state_ids contains lots of duplicates, so it turns out to be - # cheaper to build a complete set of unique - # ((type, state_key), event_id) tuples, and then filter out the ones we - # don't want. + # cheaper to build a complete event_id => (type, state_key) dict, and then + # filter out the ones we don't want # - state_key_to_event_id_set = { - e + event_id_to_state_key = { + event_id: key for key_to_eid in itervalues(event_to_state_ids) - for e in key_to_eid.items() + for key, event_id in iteritems(key_to_eid) } def include(typ, state_key): @@ -346,7 +345,7 @@ def filter_events_for_server(store, server_name, events): event_map = yield store.get_events([ e_id - for key, e_id in state_key_to_event_id_set + for e_id, key in iteritems(event_id_to_state_key) if include(key[0], key[1]) ]) |