You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Dec 10, 2018. It is now read-only.
Service A receives TTransportException while calling Service B (in my example this was because I returned an int instead of the expected string)
Currently you will see a TTransportException on the client that called Service A, but there is no indication in Service A that there was a problem communicating with Service B. This makes for some difficult debugging...
For now, I'm resolving the issue by catching TTransportException where Service A calls Service B and re-raising a different error. However, I still think this is a major gotcha.
Do you think there's a way we can modify thriftpy to prevent this from happening?
The text was updated successfully, but these errors were encountered:
Sign up for freeto subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Here's the scenario:
Currently you will see a TTransportException on the client that called Service A, but there is no indication in Service A that there was a problem communicating with Service B. This makes for some difficult debugging...
I made a gist illustrating the issue here: https://gist.github.com/pawl/5e1e71e6b9f410d4491fe68c24b9977a
This happens because TThreadedServer swallows the TTransportException here: https://github.com/eleme/thriftpy/blob/v0.3.9/thriftpy/server.py#L96-L97 If you remove that, then all calls will error out, because TTransportException seems to always occur at EOF.
For now, I'm resolving the issue by catching TTransportException where Service A calls Service B and re-raising a different error. However, I still think this is a major gotcha.
Do you think there's a way we can modify thriftpy to prevent this from happening?
The text was updated successfully, but these errors were encountered: