Skip to content
This repository has been archived by the owner on Apr 26, 2024. It is now read-only.

Fix rotating existing notifications in push summary #14138

Merged
merged 3 commits into from
Oct 11, 2022
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions changelog.d/14138.bugfix
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Fix error in background update when rotating existing notifications. Introduced in v1.69.0rc2.
15 changes: 10 additions & 5 deletions synapse/storage/databases/main/event_push_actions.py
Original file line number Diff line number Diff line change
Expand Up @@ -1104,11 +1104,16 @@ def _handle_new_receipts_for_notifs_txn(self, txn: LoggingTransaction) -> bool:
)

# First ensure that the existing rows have an updated thread_id field.
clokep marked this conversation as resolved.
Show resolved Hide resolved
self.db_pool.simple_update_txn(
txn,
table="event_push_summary",
keyvalues={"room_id": room_id, "user_id": user_id, "thread_id": None},
updatevalues={"thread_id": "main"},
txn.execute(
"""
UPDATE event_push_summary
SET thread_id = ?
WHERE room_id = ? AND user_id = ? AND thread_id is NULL
""",
(
room_id,
user_id,
),
)

# Replace the previous summary with the new counts.
Expand Down