summary refs log tree commit diff
diff options
context:
space:
mode:
authorBrendan Abolivier <babolivier@matrix.org>2020-09-08 15:26:06 +0100
committerGitHub <noreply@github.com>2020-09-08 15:26:06 +0100
commitd4daff9b59bc2c837d60b132aaaea85d1c0f00b4 (patch)
tree2b25b045b62067a663bd7071f54e2a1118ac6085
parentfix typo (diff)
downloadsynapse-d4daff9b59bc2c837d60b132aaaea85d1c0f00b4.tar.xz
Fix /notifications and pushers misbehaving because of unread counts (#8280)
-rw-r--r--changelog.d/8280.bugfix1
-rw-r--r--synapse/storage/databases/main/event_push_actions.py5
2 files changed, 4 insertions, 2 deletions
diff --git a/changelog.d/8280.bugfix b/changelog.d/8280.bugfix
new file mode 100644

index 0000000000..e306282438 --- /dev/null +++ b/changelog.d/8280.bugfix
@@ -0,0 +1 @@ +Fix a bug introduced in v1.20.0rc1 causing some features related to notifications to misbehave following the implementation of unread counts. diff --git a/synapse/storage/databases/main/event_push_actions.py b/synapse/storage/databases/main/event_push_actions.py
index 50fac9e72e..5233ed83e2 100644 --- a/synapse/storage/databases/main/event_push_actions.py +++ b/synapse/storage/databases/main/event_push_actions.py
@@ -196,7 +196,7 @@ class EventPushActionsWorkerStore(SQLBaseStore): def f(txn): sql = ( "SELECT DISTINCT(user_id) FROM event_push_actions WHERE" - " stream_ordering >= ? AND stream_ordering <= ?" + " stream_ordering >= ? AND stream_ordering <= ? AND notif = 1" ) txn.execute(sql, (min_stream_ordering, max_stream_ordering)) return [r[0] for r in txn] @@ -644,7 +644,7 @@ class EventPushActionsWorkerStore(SQLBaseStore): "SELECT e.received_ts" " FROM event_push_actions AS ep" " JOIN events e ON ep.room_id = e.room_id AND ep.event_id = e.event_id" - " WHERE ep.stream_ordering > ?" + " WHERE ep.stream_ordering > ? AND notif = 1" " ORDER BY ep.stream_ordering ASC" " LIMIT 1" ) @@ -708,6 +708,7 @@ class EventPushActionsStore(EventPushActionsWorkerStore): " FROM event_push_actions epa, events e" " WHERE epa.event_id = e.event_id" " AND epa.user_id = ? %s" + " AND epa.notif = 1" " ORDER BY epa.stream_ordering DESC" " LIMIT ?" % (before_clause,) )