Diwaker Gupta created THRIFT-1805:
-------------------------------------
Summary: Thrift should not swallow ALL exceptions
Key: THRIFT-1805
URL: https://issues.apache.org/jira/browse/THRIFT-1805
Project: Thrift
Issue Type: Bug
Components: Java - Compiler, Java - Library
Affects Versions: 0.9
Reporter: Diwaker Gupta
Assignee: Jake Farrell
In Thrift 0.8.0, Thrift generated Java code did not swallow application
exceptions. As a result of THRIFT-1658, this behavior changed in 0.9.0 and now
the generated code swallows ALL application exceptions (via ProcessFunction).
Apparently this was the behavior in Thrift 0.6.0 and while I see the rationale,
it is breaking our applications.
Our code relies on the fact that exceptions can propagate outside of Thrift for
certain things (e.g., to aggressively drop connections for clients that send
invalid/malformed requests). ProcessFunction makes it near impossible to do
this -- not only does it swallow the exception, it also loses all information
about the original exception and just writes out a generic
TApplicationException.
IMO ProcessFunction should only catch TException. If the application code wants
to use other exceptions for some reason (in particular, Errors and
RuntimeExceptions), Thrift shouldn't prevent that.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira