diff options
author | Erik Johnston <erikj@jki.re> | 2019-02-25 14:34:19 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-02-25 14:34:19 +0000 |
commit | 5b9786ee0099cb35a718e968b097fa85f0e076e3 (patch) | |
tree | fd38aa4f94a96034faf6133b3312cacb3ac4bd01 | |
parent | Merge pull request #4716 from matrix-org/erikj/pusher_logging (diff) | |
parent | Newsfile (diff) | |
download | synapse-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.misc | 1 | ||||
-rw-r--r-- | synapse/app/frontend_proxy.py | 15 |
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 |