diff options
author | Mark Haines <mark.haines@matrix.org> | 2015-05-12 15:31:26 +0100 |
---|---|---|
committer | Mark Haines <mark.haines@matrix.org> | 2015-05-12 15:31:26 +0100 |
commit | 4429e4bf2499b0b3fecc8637c2a7a932aab908e4 (patch) | |
tree | 0c17e1767434df9684c3d34263a161ba4fa1d9b9 /synapse/storage/events.py | |
parent | Update the end_token correctly, otherwise the token doesn't advance and the c... (diff) | |
parent | Merge pull request #143 from matrix-org/erikj/SYN-375 (diff) | |
download | synapse-4429e4bf2499b0b3fecc8637c2a7a932aab908e4.tar.xz |
Merge branch 'develop' into notifier_unify
Conflicts: synapse/notifier.py
Diffstat (limited to 'synapse/storage/events.py')
-rw-r--r-- | synapse/storage/events.py | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/synapse/storage/events.py b/synapse/storage/events.py index 626a5eaf6e..a5a6869079 100644 --- a/synapse/storage/events.py +++ b/synapse/storage/events.py @@ -135,19 +135,17 @@ class EventsStore(SQLBaseStore): outlier = event.internal_metadata.is_outlier() if not outlier: - self._store_state_groups_txn(txn, event, context) - self._update_min_depth_for_room_txn( txn, event.room_id, event.depth ) - have_persisted = self._simple_select_one_onecol_txn( + have_persisted = self._simple_select_one_txn( txn, - table="event_json", + table="events", keyvalues={"event_id": event.event_id}, - retcol="event_id", + retcols=["event_id", "outlier"], allow_none=True, ) @@ -162,7 +160,9 @@ class EventsStore(SQLBaseStore): # if we are persisting an event that we had persisted as an outlier, # but is no longer one. if have_persisted: - if not outlier: + if not outlier and have_persisted["outlier"]: + self._store_state_groups_txn(txn, event, context) + sql = ( "UPDATE event_json SET internal_metadata = ?" " WHERE event_id = ?" @@ -182,6 +182,9 @@ class EventsStore(SQLBaseStore): ) return + if not outlier: + self._store_state_groups_txn(txn, event, context) + self._handle_prev_events( txn, outlier=outlier, |