diff options
Diffstat (limited to 'synapse/storage/__init__.py')
-rw-r--r-- | synapse/storage/__init__.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/synapse/storage/__init__.py b/synapse/storage/__init__.py index 4e8a54c8f7..0d57073aa4 100644 --- a/synapse/storage/__init__.py +++ b/synapse/storage/__init__.py @@ -263,13 +263,17 @@ class DataStore(RoomMemberStore, RoomStore, @defer.inlineCallbacks def get_current_state(self, room_id, event_type=None, state_key=""): + del_sql = ( + "SELECT event_id FROM deletions WHERE deletes = e.event_id" + ) + sql = ( "SELECT e.*, (%(deleted)s) AS deleted FROM events as e " "INNER JOIN current_state_events as c ON e.event_id = c.event_id " "INNER JOIN state_events as s ON e.event_id = s.event_id " "WHERE c.room_id = ? " ) % { - "deleted": "e.event_id IN (SELECT deletes FROM deletions)", + "deleted": del_sql, } if event_type: |