summary refs log tree commit diff
diff options
context:
space:
mode:
authorAndrew Morgan <andrew@amorgan.xyz>2020-08-03 17:39:44 -0700
committerAndrew Morgan <andrew@amorgan.xyz>2020-08-03 17:39:44 -0700
commitc7fb21fe44c711eba2d67a6260297d98ce44fbec (patch)
treedba3ce6da59e551ddbd0ceb813a4ddef328bdddf
parentMerge commit 'ff22672fd' into anoa/dinsic_release_1_18_x (diff)
parentAbort federation requests if the client disconnects early (#7930) (diff)
downloadsynapse-c7fb21fe44c711eba2d67a6260297d98ce44fbec.tar.xz
Merge commit '4876af06d' into anoa/dinsic_release_1_18_x
* commit '4876af06d':
  Abort federation requests if the client disconnects early (#7930)
-rw-r--r--changelog.d/7930.feature1
-rw-r--r--synapse/federation/transport/server.py6
2 files changed, 7 insertions, 0 deletions
diff --git a/changelog.d/7930.feature b/changelog.d/7930.feature
new file mode 100644

index 0000000000..a27e4812da --- /dev/null +++ b/changelog.d/7930.feature
@@ -0,0 +1 @@ +Abort federation requests where the client disconnects before the ratelimiter expires. diff --git a/synapse/federation/transport/server.py b/synapse/federation/transport/server.py
index 5da69c2c49..b518dace8a 100644 --- a/synapse/federation/transport/server.py +++ b/synapse/federation/transport/server.py
@@ -339,6 +339,12 @@ class BaseFederationServlet(object): if origin: with ratelimiter.ratelimit(origin) as d: await d + if request._disconnected: + logger.warning( + "client disconnected before we started processing " + "request" + ) + return -1, None response = await func( origin, content, request.args, *args, **kwargs )