From d422570e9bac0a00d50c62d423479ad9b0250c03 Mon Sep 17 00:00:00 2001 From: Erik Johnston Date: Tue, 8 Jan 2019 14:22:18 +0000 Subject: [PATCH 1/2] Use RequestSendFailed when fail to parse content type headers --- synapse/http/matrixfederationclient.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/synapse/http/matrixfederationclient.py b/synapse/http/matrixfederationclient.py index 7a2b4f095..be4076fc6 100644 --- a/synapse/http/matrixfederationclient.py +++ b/synapse/http/matrixfederationclient.py @@ -823,21 +823,21 @@ def check_content_type_is_json(headers): headers (twisted.web.http_headers.Headers): headers to check Raises: - RuntimeError if the + RequestSendFailed: if the Content-Type header is missing or isn't JSON """ c_type = headers.getRawHeaders(b"Content-Type") if c_type is None: - raise RuntimeError( + raise RequestSendFailed(RuntimeError( "No Content-Type header" - ) + ), can_retry=False) c_type = c_type[0].decode('ascii') # only the first header val, options = cgi.parse_header(c_type) if val != "application/json": - raise RuntimeError( + raise RequestSendFailed(RuntimeError( "Content-Type not application/json: was '%s'" % c_type - ) + ), can_retry=False) def encode_query_args(args): From d91b99abe062579fd8afe90bf02e018ca57e96d5 Mon Sep 17 00:00:00 2001 From: Erik Johnston Date: Tue, 8 Jan 2019 14:24:05 +0000 Subject: [PATCH 2/2] Newsfile --- changelog.d/4362.misc | 1 + 1 file changed, 1 insertion(+) create mode 100644 changelog.d/4362.misc diff --git a/changelog.d/4362.misc b/changelog.d/4362.misc new file mode 100644 index 000000000..020dacb54 --- /dev/null +++ b/changelog.d/4362.misc @@ -0,0 +1 @@ +Add better logging for unexpected errors while sending transactions