You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "Henrique Mendonça (JIRA)" <ji...@apache.org> on 2014/06/18 11:37:02 UTC

[jira] [Created] (THRIFT-2581) TFDTransport destructor should not throw

Henrique Mendonça created THRIFT-2581:
-----------------------------------------

             Summary: TFDTransport destructor should not throw 
                 Key: THRIFT-2581
                 URL: https://issues.apache.org/jira/browse/THRIFT-2581
             Project: Thrift
          Issue Type: Bug
          Components: C++ - Library
    Affects Versions: 0.9
            Reporter: Henrique Mendonça
            Assignee: Henrique Mendonça
            Priority: Minor
             Fix For: 0.9.2


Following the discussion on https://github.com/apache/thrift/pull/142 ~TFDTransport seems to be the only throwing destructor from all transports.
Throwing from a destructor is considered not safe under certain conditions and should be avoided.

The c++ standard defines a default noexcept for default destructors as mentioned in: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3166.html
This will cause the current behavior to fail under C++11.

In my opinion, we should catch this mentioned exception in the destructor and log it. This will require to explicitly call the close() method in order to catch the exception.



--
This message was sent by Atlassian JIRA
(v6.2#6252)