diff options
author | Erik Johnston <erik@matrix.org> | 2015-09-16 09:54:42 +0100 |
---|---|---|
committer | Erik Johnston <erik@matrix.org> | 2015-09-16 09:54:42 +0100 |
commit | 663b96ae96efe4f7a818152f07ec58c5b4b21456 (patch) | |
tree | 0791620f27a10557659fed679e132e2246d1fc05 | |
parent | Bump change log (diff) | |
parent | "Comments" (diff) | |
download | synapse-663b96ae96efe4f7a818152f07ec58c5b4b21456.tar.xz |
Merge branch 'erikj/update_extremeties' into hotfixes-v0.10.0-r2
-rw-r--r-- | synapse/storage/event_federation.py | 9 | ||||
-rw-r--r-- | synapse/storage/events.py | 2 |
2 files changed, 11 insertions, 0 deletions
diff --git a/synapse/storage/event_federation.py b/synapse/storage/event_federation.py index dda3027b61..7cb314dee8 100644 --- a/synapse/storage/event_federation.py +++ b/synapse/storage/event_federation.py @@ -303,6 +303,15 @@ class EventFederationStore(SQLBaseStore): ], ) + self._update_extremeties(txn, events) + + def _update_extremeties(self, txn, events): + """Updates the event_*_extremities tables based on the new/updated + events being persisted. + + This is called for new events *and* for events that were outliers, but + are are now being persisted as non-outliers. + """ events_by_room = {} for ev in events: events_by_room.setdefault(ev.room_id, []).append(ev) diff --git a/synapse/storage/events.py b/synapse/storage/events.py index e3eabab13d..8774b3b388 100644 --- a/synapse/storage/events.py +++ b/synapse/storage/events.py @@ -275,6 +275,8 @@ class EventsStore(SQLBaseStore): (False, event.event_id,) ) + self._update_extremeties(txn, [event]) + events_and_contexts = filter( lambda ec: ec[0] not in to_remove, events_and_contexts |