summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--.buildkite/pipeline.yml5
-rw-r--r--changelog.d/5770.misc1
-rw-r--r--changelog.d/5785.misc1
-rw-r--r--synapse/handlers/presence.py2
-rw-r--r--synapse/handlers/typing.py2
-rw-r--r--synapse/storage/roommember.py4
6 files changed, 9 insertions, 6 deletions
diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml

index ee76954185..118d648862 100644 --- a/.buildkite/pipeline.yml +++ b/.buildkite/pipeline.yml
@@ -48,14 +48,15 @@ steps: - wait - command: - - "python -m pip install tox" + - "apt-get update && apt-get install -y python3.5 python3.5-dev python3-pip libxml2-dev libxslt-dev zlib1g-dev" + - "python3.5 -m pip install tox" - "tox -e py35-old,codecov" label: ":python: 3.5 / SQLite / Old Deps" env: TRIAL_FLAGS: "-j 2" plugins: - docker#v3.0.1: - image: "python:3.5" + image: "ubuntu:xenial" # We use xenail to get an old sqlite and python propagate-environment: true retry: automatic: diff --git a/changelog.d/5770.misc b/changelog.d/5770.misc new file mode 100644
index 0000000000..5e15dfd5fa --- /dev/null +++ b/changelog.d/5770.misc
@@ -0,0 +1 @@ +Reduce database IO usage by optimising queries for current membership. diff --git a/changelog.d/5785.misc b/changelog.d/5785.misc new file mode 100644
index 0000000000..0691222c42 --- /dev/null +++ b/changelog.d/5785.misc
@@ -0,0 +1 @@ +Set the logs emitted when checking typing and presence timeouts to DEBUG level, not INFO. diff --git a/synapse/handlers/presence.py b/synapse/handlers/presence.py
index ea54d0b991..94a9ca0357 100644 --- a/synapse/handlers/presence.py +++ b/synapse/handlers/presence.py
@@ -333,7 +333,7 @@ class PresenceHandler(object): """Checks the presence of users that have timed out and updates as appropriate. """ - logger.info("Handling presence timeouts") + logger.debug("Handling presence timeouts") now = self.clock.time_msec() # Fetch the list of users that *may* have timed out. Things may have diff --git a/synapse/handlers/typing.py b/synapse/handlers/typing.py
index 6b661aa93d..f882330293 100644 --- a/synapse/handlers/typing.py +++ b/synapse/handlers/typing.py
@@ -83,7 +83,7 @@ class TypingHandler(object): self._room_typing = {} def _handle_timeouts(self): - logger.info("Checking for typing timeouts") + logger.debug("Checking for typing timeouts") now = self.clock.time_msec() diff --git a/synapse/storage/roommember.py b/synapse/storage/roommember.py
index cb88e49b51..a1b9fd8199 100644 --- a/synapse/storage/roommember.py +++ b/synapse/storage/roommember.py
@@ -870,10 +870,10 @@ class RoomMemberStore(RoomMemberWorkerStore): next_room, = row sql = """ - UPDATE current_state_events AS c + UPDATE current_state_events SET membership = ( SELECT membership FROM room_memberships - WHERE event_id = c.event_id + WHERE event_id = current_state_events.event_id ) WHERE room_id = ? """