diff options
author | Erik Johnston <erik@matrix.org> | 2017-07-13 11:23:53 +0100 |
---|---|---|
committer | Erik Johnston <erik@matrix.org> | 2017-07-13 11:23:53 +0100 |
commit | f60218ec412dd9ef13768d7c216da982f5eb6870 (patch) | |
tree | c70aa6cb4e7f7be1ff7c7e5721e8c09de0cbae94 /synapse/push | |
parent | Merge pull request #2362 from matrix-org/erikj/sync_user_users_who_share (diff) | |
download | synapse-f60218ec412dd9ef13768d7c216da982f5eb6870.tar.xz |
Push: Don't acquire lock unless necessary
Diffstat (limited to 'synapse/push')
-rw-r--r-- | synapse/push/bulk_push_rule_evaluator.py | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/synapse/push/bulk_push_rule_evaluator.py b/synapse/push/bulk_push_rule_evaluator.py index 803ac3e75b..f304f4daf2 100644 --- a/synapse/push/bulk_push_rule_evaluator.py +++ b/synapse/push/bulk_push_rule_evaluator.py @@ -213,6 +213,10 @@ class RulesForRoom(object): """ state_group = context.state_group + if state_group and self.state_group == state_group: + logger.debug("Using cached rules for %r", self.room_id) + defer.returnValue(self.rules_by_user) + with (yield self.linearizer.queue(())): if state_group and self.state_group == state_group: logger.debug("Using cached rules for %r", self.room_id) |