From 91e886d615dd24ff0258e06470bca0cc8ffe22eb Mon Sep 17 00:00:00 2001 From: Erik Johnston Date: Fri, 19 Jun 2020 13:56:35 +0100 Subject: [PATCH] Speed up state res v2 across large state differences. (#7725) --- changelog.d/7725.misc | 1 + synapse/state/v2.py | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) create mode 100644 changelog.d/7725.misc diff --git a/changelog.d/7725.misc b/changelog.d/7725.misc new file mode 100644 index 000000000..f295a4552 --- /dev/null +++ b/changelog.d/7725.misc @@ -0,0 +1 @@ +Speed up state res v2 across large state differences. diff --git a/synapse/state/v2.py b/synapse/state/v2.py index e25bc5d26..57eadce4e 100644 --- a/synapse/state/v2.py +++ b/synapse/state/v2.py @@ -133,8 +133,9 @@ def resolve_events_with_store( # OK, so we've now resolved the power events. Now sort the remaining # events using the mainline of the resolved power level. + set_power_events = set(sorted_power_events) leftover_events = [ - ev_id for ev_id in full_conflicted_set if ev_id not in sorted_power_events + ev_id for ev_id in full_conflicted_set if ev_id not in set_power_events ] logger.debug("sorting %d remaining events", len(leftover_events))