Add some comments to areas that could be optimised.
This commit is contained in:
parent
3fbb031745
commit
5645d9747b
|
@ -447,6 +447,9 @@ class SyncHandler(BaseHandler):
|
||||||
)
|
)
|
||||||
now_token = now_token.copy_and_replace("presence_key", presence_key)
|
now_token = now_token.copy_and_replace("presence_key", presence_key)
|
||||||
|
|
||||||
|
# We now fetch all ephemeral events for this room in order to get
|
||||||
|
# this users current read receipt. This could almost certainly be
|
||||||
|
# optimised.
|
||||||
_, all_ephemeral_by_room = yield self.ephemeral_by_room(
|
_, all_ephemeral_by_room = yield self.ephemeral_by_room(
|
||||||
sync_config, now_token
|
sync_config, now_token
|
||||||
)
|
)
|
||||||
|
|
|
@ -26,7 +26,9 @@ import random
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
# Pushers could now be moved to pull out of the event_actions table instead
|
||||||
|
# of listening on the event stream: this would avoid them having to run the
|
||||||
|
# rules again.
|
||||||
class Pusher(object):
|
class Pusher(object):
|
||||||
INITIAL_BACKOFF = 1000
|
INITIAL_BACKOFF = 1000
|
||||||
MAX_BACKOFF = 60 * 60 * 1000
|
MAX_BACKOFF = 60 * 60 * 1000
|
||||||
|
|
|
@ -59,6 +59,14 @@ def evaluator_for_room_id(room_id, hs, store):
|
||||||
|
|
||||||
|
|
||||||
class BulkPushRuleEvaluator:
|
class BulkPushRuleEvaluator:
|
||||||
|
"""
|
||||||
|
Runs push rules for all users in a room.
|
||||||
|
This is faster than running PushRuleEvaluator for each user because it
|
||||||
|
fetches all the rules for all the users in one (batched) db query
|
||||||
|
rarher than doing multiple queries per-user. It currently uses
|
||||||
|
the same logic to run the actual rules, but could be optimised further
|
||||||
|
(see https://matrix.org/jira/browse/SYN-562)
|
||||||
|
"""
|
||||||
def __init__(self, room_id, rules_by_user, display_names, users_in_room):
|
def __init__(self, room_id, rules_by_user, display_names, users_in_room):
|
||||||
self.room_id = room_id
|
self.room_id = room_id
|
||||||
self.rules_by_user = rules_by_user
|
self.rules_by_user = rules_by_user
|
||||||
|
|
Loading…
Reference in New Issue