Description of problem: Under an unknown scenario, sporadic segfaults of qpid-cpp client were seen. It is assumed the cause is due to the fix in https://bugzilla.redhat.com/show_bug.cgi?id=1663609 that was in the right direction but swapped 2 commands: Index: qpid-cpp-1.36.0/src/qpid/client/TCPConnector.cpp =================================================================== --- qpid-cpp-1.36.0/src/qpid/client/TCPConnector.cpp (revision 23730) +++ qpid-cpp-1.36.0/src/qpid/client/TCPConnector.cpp (revision 23991) @@ -316,8 +316,8 @@ void TCPConnector::aborted(AsynchIO&) { closed = true; + socket->close(); socketClosed(*aio, *socket); - socket->close(); } The above should be the fix for this BZ. Rationale: we should close socket first, and then release its FD it used (in socketClosed that calls Poller::unregisterHandle later on). Version-Release number of selected component (if applicable): qpid-cpp 1.36.0-20+hf1 How reproducible: n.a. Steps to Reproduce: ??? Actual results: Expected results: Additional info:
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2019:1770