diff options
author | Mark Haines <mjark@negativecurvature.net> | 2016-09-02 16:18:34 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-09-02 16:18:34 +0100 |
commit | 81b94c5750979488eadeb8435013540ad11b30d1 (patch) | |
tree | e04dd85d44ee456cd2cfb687f55b516406f21241 /synapse/storage | |
parent | Explicitly specify state_key for history_visibility fetching (diff) | |
parent | Only return new device messages in /sync (diff) | |
download | synapse-81b94c5750979488eadeb8435013540ad11b30d1.tar.xz |
Merge pull request #1066 from matrix-org/markjh/direct_to_device_lowerbound
Only return new device messages in /sync
Diffstat (limited to 'synapse/storage')
-rw-r--r-- | synapse/storage/deviceinbox.py | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/synapse/storage/deviceinbox.py b/synapse/storage/deviceinbox.py index 2fa0a218b9..68116b0394 100644 --- a/synapse/storage/deviceinbox.py +++ b/synapse/storage/deviceinbox.py @@ -85,7 +85,7 @@ class DeviceInboxStore(SQLBaseStore): defer.returnValue(self._device_inbox_id_gen.get_current_token()) def get_new_messages_for_device( - self, user_id, device_id, current_stream_id, limit=100 + self, user_id, device_id, last_stream_id, current_stream_id, limit=100 ): """ Args: @@ -101,11 +101,13 @@ class DeviceInboxStore(SQLBaseStore): sql = ( "SELECT stream_id, message_json FROM device_inbox" " WHERE user_id = ? AND device_id = ?" - " AND stream_id <= ?" + " AND ? < stream_id AND stream_id <= ?" " ORDER BY stream_id ASC" " LIMIT ?" ) - txn.execute(sql, (user_id, device_id, current_stream_id, limit)) + txn.execute(sql, ( + user_id, device_id, last_stream_id, current_stream_id, limit + )) messages = [] for row in txn.fetchall(): stream_pos = row[0] |