diff options
author | Sean Quah <8349537+squahtx@users.noreply.github.com> | 2023-01-31 11:31:52 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-01-31 11:31:52 +0000 |
commit | 805b641fb6b31e677278eaf6e27875eba5c2a3d3 (patch) | |
tree | 8e3810b2a7bcd828462679a46af512f10a841487 | |
parent | Make sqlite database migrations transactional again, part two (#14926) (diff) | |
download | synapse-805b641fb6b31e677278eaf6e27875eba5c2a3d3.tar.xz |
Fix "Re-starting finished log context" spam when creating events (#14947)
`run_in_background` calls re-use the current logging context. When they are not awaited, they can complete after the current logging context has been marked as finished, which leads to log spam. Use `run_as_background_process` instead. Fixes one of the instances of #13090. Signed-off-by: Sean Quah <seanq@matrix.org>
-rw-r--r-- | changelog.d/14947.bugfix | 1 | ||||
-rw-r--r-- | synapse/handlers/message.py | 4 |
2 files changed, 4 insertions, 1 deletions
diff --git a/changelog.d/14947.bugfix b/changelog.d/14947.bugfix new file mode 100644 index 0000000000..b9e768c44c --- /dev/null +++ b/changelog.d/14947.bugfix @@ -0,0 +1 @@ +Fix a long-standing bug where sending messages on servers with presence enabled would spam "Re-starting finished log context" log lines. diff --git a/synapse/handlers/message.py b/synapse/handlers/message.py index 6290f7f523..e688e00575 100644 --- a/synapse/handlers/message.py +++ b/synapse/handlers/message.py @@ -1939,7 +1939,9 @@ class EventCreationHandler: if event.type == EventTypes.Message: # We don't want to block sending messages on any presence code. This # matters as sometimes presence code can take a while. - run_in_background(self._bump_active_time, requester.user) + run_as_background_process( + "bump_presence_active_time", self._bump_active_time, requester.user + ) async def _notify() -> None: try: |