diff options
author | Brendan Abolivier <babolivier@matrix.org> | 2020-09-07 16:56:27 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-09-07 16:56:27 +0100 |
commit | d8762cc116110ed0d4557b902414ed5ee9ccea96 (patch) | |
tree | 389ce4995f730415b893e3518425f8a78ed6e706 /synapse | |
parent | Avoid table-scanning users at startup (#8271) (diff) | |
download | synapse-d8762cc116110ed0d4557b902414ed5ee9ccea96.tar.xz |
Only add rows to the push actions table if the event notifies or should be marked unread (#8274)
Diffstat (limited to 'synapse')
-rw-r--r-- | synapse/push/bulk_push_rule_evaluator.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/synapse/push/bulk_push_rule_evaluator.py b/synapse/push/bulk_push_rule_evaluator.py index 1bb8e346b9..c440f2545c 100644 --- a/synapse/push/bulk_push_rule_evaluator.py +++ b/synapse/push/bulk_push_rule_evaluator.py @@ -219,7 +219,12 @@ class BulkPushRuleEvaluator: if event.type == EventTypes.Member and event.state_key == uid: display_name = event.content.get("displayname", None) - actions_by_user[uid] = [] + if count_as_unread: + # Add an element for the current user if the event needs to be marked as + # unread, so that add_push_actions_to_staging iterates over it. + # If the event shouldn't be marked as unread but should notify the + # current user, it'll be added to the dict later. + actions_by_user[uid] = [] for rule in rules: if "enabled" in rule and not rule["enabled"]: |