From d886eb8d1b6668aeb0c460f458a8c0e2446d1c68 Mon Sep 17 00:00:00 2001 From: Eric Eastwood Date: Thu, 13 Nov 2025 10:11:16 -0600 Subject: [PATCH 1/2] Fix potential lost logcontext when `PerDestinationQueue.shutdown(...)` --- synapse/federation/sender/per_destination_queue.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/synapse/federation/sender/per_destination_queue.py b/synapse/federation/sender/per_destination_queue.py index 4a1b84aed75..cdacf16d725 100644 --- a/synapse/federation/sender/per_destination_queue.py +++ b/synapse/federation/sender/per_destination_queue.py @@ -41,6 +41,7 @@ from synapse.federation.units import Edu from synapse.handlers.presence import format_user_presence_state from synapse.logging import issue9533_logger +from synapse.logging.context import PreserveLoggingContext from synapse.logging.opentracing import SynapseTags, set_tag from synapse.metrics import SERVER_NAME_LABEL, sent_transactions_counter from synapse.types import JsonDict, ReadReceipt @@ -186,7 +187,8 @@ def shutdown(self) -> None: self._transaction_manager.shutdown() try: if self.active_transmission_loop is not None: - self.active_transmission_loop.cancel() + with PreserveLoggingContext(): + self.active_transmission_loop.cancel() except Exception: pass From ea291ad1d08fd2357c61947ba76c6147f0127155 Mon Sep 17 00:00:00 2001 From: Eric Eastwood Date: Thu, 13 Nov 2025 10:18:07 -0600 Subject: [PATCH 2/2] Add changelog --- changelog.d/19178.misc | 1 + 1 file changed, 1 insertion(+) create mode 100644 changelog.d/19178.misc diff --git a/changelog.d/19178.misc b/changelog.d/19178.misc new file mode 100644 index 00000000000..3f803c35445 --- /dev/null +++ b/changelog.d/19178.misc @@ -0,0 +1 @@ +Fix potential lost logcontext when `PerDestinationQueue.shutdown(...)`.