mirror of
https://mau.dev/maunium/synapse.git
synced 2024-08-25 03:35:28 +00:00
Add ID generator for push_rules_enable to #resolve SYN-378
This commit is contained in:
parent
47fb089eb5
commit
7c549dd557
@ -309,6 +309,7 @@ class SQLBaseStore(object):
|
|||||||
self._access_tokens_id_gen = IdGenerator("access_tokens", "id", self)
|
self._access_tokens_id_gen = IdGenerator("access_tokens", "id", self)
|
||||||
self._pushers_id_gen = IdGenerator("pushers", "id", self)
|
self._pushers_id_gen = IdGenerator("pushers", "id", self)
|
||||||
self._push_rule_id_gen = IdGenerator("push_rules", "id", self)
|
self._push_rule_id_gen = IdGenerator("push_rules", "id", self)
|
||||||
|
self._push_rules_enable_id_gen = IdGenerator("push_rules_enable", "id", self)
|
||||||
|
|
||||||
def start_profiling(self):
|
def start_profiling(self):
|
||||||
self._previous_loop_ts = self._clock.time_msec()
|
self._previous_loop_ts = self._clock.time_msec()
|
||||||
|
@ -204,11 +204,21 @@ class PushRuleStore(SQLBaseStore):
|
|||||||
|
|
||||||
@defer.inlineCallbacks
|
@defer.inlineCallbacks
|
||||||
def set_push_rule_enabled(self, user_name, rule_id, enabled):
|
def set_push_rule_enabled(self, user_name, rule_id, enabled):
|
||||||
yield self._simple_upsert(
|
ret = yield self.runInteraction(
|
||||||
|
"_set_push_rule_enabled_txn",
|
||||||
|
self._set_push_rule_enabled_txn,
|
||||||
|
user_name, rule_id, enabled
|
||||||
|
)
|
||||||
|
defer.returnValue(ret)
|
||||||
|
|
||||||
|
def _set_push_rule_enabled_txn(self, txn, user_name, rule_id, enabled):
|
||||||
|
new_id = self._push_rules_enable_id_gen.get_next_txn(txn)
|
||||||
|
self._simple_upsert_txn(
|
||||||
|
txn,
|
||||||
PushRuleEnableTable.table_name,
|
PushRuleEnableTable.table_name,
|
||||||
{'user_name': user_name, 'rule_id': rule_id},
|
{'user_name': user_name, 'rule_id': rule_id},
|
||||||
{'enabled': 1 if enabled else 0},
|
{'enabled': 1 if enabled else 0},
|
||||||
desc="set_push_rule_enabled",
|
{'id': new_id},
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user