summary refs log tree commit diff
path: root/synapse/http
diff options
context:
space:
mode:
authorRichard van der Hoff <richard@matrix.org>2018-08-21 20:30:09 +0100
committerRichard van der Hoff <richard@matrix.org>2018-08-21 20:30:09 +0100
commita52f27699093e7273d55acace8a53f307bf7771e (patch)
treeb0a1887bd2cd1e3cb9f1f320f6232465390c5313 /synapse/http
parentMerge pull request #3727 from matrix-org/erikj/dont_error_on_missing_keys (diff)
parentchangelog (diff)
downloadsynapse-a52f27699093e7273d55acace8a53f307bf7771e.tar.xz
Merge tag 'v0.33.3rc2' into develop
Bugfixes
--------

- Fix bug in v0.33.3rc1 which caused infinite loops and OOMs
([\#3723](https://github.com/matrix-org/synapse/issues/3723))
Diffstat (limited to 'synapse/http')
-rw-r--r--synapse/http/site.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/synapse/http/site.py b/synapse/http/site.py
index ad2a98468e..88ed3714f9 100644
--- a/synapse/http/site.py
+++ b/synapse/http/site.py
@@ -182,7 +182,7 @@ class SynapseRequest(Request):
         # the client disconnects.
         with PreserveLoggingContext(self.logcontext):
             logger.warn(
-                "Error processing request: %s %s", reason.type, reason.value,
+                "Error processing request %r: %s %s", self, reason.type, reason.value,
             )
 
             if not self._is_processing:
@@ -219,6 +219,12 @@ class SynapseRequest(Request):
         """Log the completion of this request and update the metrics
         """
 
+        if self.logcontext is None:
+            # this can happen if the connection closed before we read the
+            # headers (so render was never called). In that case we'll already
+            # have logged a warning, so just bail out.
+            return
+
         usage = self.logcontext.get_resource_usage()
 
         if self._processing_finished_time is None: