From 8cfc0165e913a140782538003fd61c2e01dcf81d Mon Sep 17 00:00:00 2001 From: Matthew Hodgson Date: Thu, 5 Jan 2017 13:39:43 +0000 Subject: [PATCH 1/3] fix annoying typos --- synapse/storage/roommember.py | 4 ++-- synapse/storage/state.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/synapse/storage/roommember.py b/synapse/storage/roommember.py index 946d5a81cc..5d18037c7c 100644 --- a/synapse/storage/roommember.py +++ b/synapse/storage/roommember.py @@ -393,8 +393,8 @@ class RoomMemberStore(SQLBaseStore): @cachedInlineCallbacks(num_args=2, cache_context=True) def _get_joined_users_from_context(self, room_id, state_group, current_state_ids, cache_context, event=None): - # We don't use `state_group`, its there so that we can cache based - # on it. However, its important that its never None, since two current_state's + # We don't use `state_group`, it's there so that we can cache based + # on it. However, it's important that it's never None, since two current_states # with a state_group of None are likely to be different. # See bulk_get_push_rules_for_room for how we work around this. assert state_group is not None diff --git a/synapse/storage/state.py b/synapse/storage/state.py index 23e7ad9922..7f466c40ac 100644 --- a/synapse/storage/state.py +++ b/synapse/storage/state.py @@ -384,7 +384,7 @@ class StateStore(SQLBaseStore): # We did this before by getting the list of group ids, and # then passing that list to sqlite to get latest event for # each (type, state_key). However, that was terribly slow - # without the right indicies (which we can't add until + # without the right indices (which we can't add until # after we finish deduping state, which requires this func) args = [next_group] if types: From d79d1657617e5c050292b6676a9851c5674576da Mon Sep 17 00:00:00 2001 From: Matthew Hodgson Date: Thu, 5 Jan 2017 13:40:39 +0000 Subject: [PATCH 2/3] add logging for all the places we call resolve_state_groups. my kingdom for a backtrace that actually works. --- synapse/api/auth.py | 1 + synapse/handlers/federation.py | 1 + synapse/state.py | 4 ++++ 3 files changed, 6 insertions(+) diff --git a/synapse/api/auth.py b/synapse/api/auth.py index a99986714d..641f2bb065 100644 --- a/synapse/api/auth.py +++ b/synapse/api/auth.py @@ -290,6 +290,7 @@ class Auth(object): with Measure(self.clock, "check_host_in_room"): latest_event_ids = yield self.store.get_latest_event_ids_in_room(room_id) + logger.info("calling resolve_state_groups from check_host_in_room"); entry = yield self.state.resolve_state_groups( room_id, latest_event_ids ) diff --git a/synapse/handlers/federation.py b/synapse/handlers/federation.py index 8c93d6d39f..9ed708bf3e 100644 --- a/synapse/handlers/federation.py +++ b/synapse/handlers/federation.py @@ -591,6 +591,7 @@ class FederationHandler(BaseHandler): event_ids = list(extremities.keys()) + logger.info("Calling resolve_state_groups in _maybe_backfill") states = yield preserve_context_over_deferred(defer.gatherResults([ preserve_fn(self.state_handler.resolve_state_groups)(room_id, [e]) for e in event_ids diff --git a/synapse/state.py b/synapse/state.py index b4eca0e5d5..bbca59b1e8 100644 --- a/synapse/state.py +++ b/synapse/state.py @@ -123,6 +123,7 @@ class StateHandler(object): if not latest_event_ids: latest_event_ids = yield self.store.get_latest_event_ids_in_room(room_id) + logger.info("calling resolve_state_groups from get_current_state"); ret = yield self.resolve_state_groups(room_id, latest_event_ids) state = ret.state @@ -147,6 +148,7 @@ class StateHandler(object): if not latest_event_ids: latest_event_ids = yield self.store.get_latest_event_ids_in_room(room_id) + logger.info("calling resolve_state_groups from get_current_state_ids"); ret = yield self.resolve_state_groups(room_id, latest_event_ids) state = ret.state @@ -158,6 +160,7 @@ class StateHandler(object): @defer.inlineCallbacks def get_current_user_in_room(self, room_id, latest_event_ids=None): + logger.info("calling resolve_state_groups from get_current_user_in_room"); if not latest_event_ids: latest_event_ids = yield self.store.get_latest_event_ids_in_room(room_id) entry = yield self.resolve_state_groups(room_id, latest_event_ids) @@ -223,6 +226,7 @@ class StateHandler(object): context.prev_state_events = [] defer.returnValue(context) + logger.info("calling resolve_state_groups from compute_event_context"); if event.is_state(): entry = yield self.resolve_state_groups( event.room_id, [e for e, _ in event.prev_events], From 883ff92a7fe2c81639a521470854b198845aff0f Mon Sep 17 00:00:00 2001 From: Matthew Hodgson Date: Thu, 5 Jan 2017 13:45:02 +0000 Subject: [PATCH 3/3] Fix case --- synapse/handlers/federation.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/synapse/handlers/federation.py b/synapse/handlers/federation.py index 9ed708bf3e..1021bcc405 100644 --- a/synapse/handlers/federation.py +++ b/synapse/handlers/federation.py @@ -591,7 +591,7 @@ class FederationHandler(BaseHandler): event_ids = list(extremities.keys()) - logger.info("Calling resolve_state_groups in _maybe_backfill") + logger.info("calling resolve_state_groups in _maybe_backfill") states = yield preserve_context_over_deferred(defer.gatherResults([ preserve_fn(self.state_handler.resolve_state_groups)(room_id, [e]) for e in event_ids