summary refs log tree commit diff
diff options
context:
space:
mode:
authorErik Johnston <erikj@jki.re>2019-02-25 14:34:19 +0000
committerGitHub <noreply@github.com>2019-02-25 14:34:19 +0000
commit5b9786ee0099cb35a718e968b097fa85f0e076e3 (patch)
treefd38aa4f94a96034faf6133b3312cacb3ac4bd01
parentMerge pull request #4716 from matrix-org/erikj/pusher_logging (diff)
parentNewsfile (diff)
downloadsynapse-5b9786ee0099cb35a718e968b097fa85f0e076e3.tar.xz
Merge pull request #4723 from matrix-org/erikj/frontend_proxy_exception
Correctly proxy exception in frontend_proxy worker
-rw-r--r--changelog.d/4723.misc1
-rw-r--r--synapse/app/frontend_proxy.py15
2 files changed, 11 insertions, 5 deletions
diff --git a/changelog.d/4723.misc b/changelog.d/4723.misc
new file mode 100644

index 0000000000..96958036ca --- /dev/null +++ b/changelog.d/4723.misc
@@ -0,0 +1 @@ +Correctly proxy exception in frontend_proxy worker diff --git a/synapse/app/frontend_proxy.py b/synapse/app/frontend_proxy.py
index d5b954361d..8479fee738 100644 --- a/synapse/app/frontend_proxy.py +++ b/synapse/app/frontend_proxy.py
@@ -21,7 +21,7 @@ from twisted.web.resource import NoResource import synapse from synapse import events -from synapse.api.errors import SynapseError +from synapse.api.errors import HttpResponseException, SynapseError from synapse.app import _base from synapse.config._base import ConfigError from synapse.config.homeserver import HomeServerConfig @@ -66,10 +66,15 @@ class PresenceStatusStubServlet(ClientV1RestServlet): headers = { "Authorization": auth_headers, } - result = yield self.http_client.get_json( - self.main_uri + request.uri.decode('ascii'), - headers=headers, - ) + + try: + result = yield self.http_client.get_json( + self.main_uri + request.uri.decode('ascii'), + headers=headers, + ) + except HttpResponseException as e: + raise e.to_synapse_error() + defer.returnValue((200, result)) @defer.inlineCallbacks