1 files changed, 4 insertions, 0 deletions
diff --git a/synapse/replication/tcp/protocol.py b/synapse/replication/tcp/protocol.py
index 0b3fe6cbf5..75c9e8355f 100644
--- a/synapse/replication/tcp/protocol.py
+++ b/synapse/replication/tcp/protocol.py
@@ -52,6 +52,7 @@ indicate which side is sending, these are *not* included on the wire::
import fcntl
import logging
import struct
+import traceback
from collections import defaultdict
from six import iteritems, iterkeys
@@ -241,6 +242,7 @@ class BaseReplicationStreamProtocol(LineOnlyReceiver):
def send_error(self, error_string, *args):
"""Send an error to remote and close the connection.
"""
+ logger.error("[%s] Sending error: %s", self.id(), error_string % args)
self.send_command(ErrorCommand(error_string % args))
self.close()
@@ -323,6 +325,8 @@ class BaseReplicationStreamProtocol(LineOnlyReceiver):
we or the remote has closed the connection)
"""
logger.info("[%s] Stop producing", self.id())
+ # debug for #4733
+ logger.info("Traceback: %s", "".join(traceback.format_stack()))
self.on_connection_closed()
def connectionLost(self, reason):
|