qpid-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andrew Stitcher (JIRA)" <qpid-...@incubator.apache.org>
Subject [jira] Resolved: (QPID-2210) broker coredumps on shutting down when rdma module is loaded
Date Thu, 17 Dec 2009 22:04:19 GMT

     [ https://issues.apache.org/jira/browse/QPID-2210?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Andrew Stitcher resolved QPID-2210.
-----------------------------------

    Resolution: Fixed

This turned out to be a double free from within SocketAddress because the SocketAddress is
copied on its way into RdmaIO and there was no non default copy constructor.

Added copy constructor and assignment operator to preserve the correct value semantics.

> broker coredumps on shutting down when rdma module is loaded
> ------------------------------------------------------------
>
>                 Key: QPID-2210
>                 URL: https://issues.apache.org/jira/browse/QPID-2210
>             Project: Qpid
>          Issue Type: Bug
>          Components: C++ Broker
>    Affects Versions: 0.6
>            Reporter: Gordon Sim
>            Assignee: Andrew Stitcher
>             Fix For: 0.6
>
>
> $ ./src/qpidd --auth no --no-module-dir --load-module ./src/.libs/rdma.so 
> 2009-11-19 12:32:17 notice SASL disabled: No Authentication Performed
> 2009-11-19 12:32:17 notice Listening on TCP port 5672
> 2009-11-19 12:32:17 notice Rdma: Listening on RDMA port 5672
> 2009-11-19 12:32:17 notice Broker running
> 2009-11-19 12:32:18 notice Shut down                        <===== Ctrl-C to shutdown
broker
> Segmentation fault (core dumped)
> Core was generated by `/home/gordon/qpid/cpp/src/.libs/lt-qpidd --auth no --no-module-dir
--load-modul'.
> Program terminated with signal 11, Segmentation fault.
> [New process 7935]
> [New process 7951]
> #0  0x00000035bb07270e in free () from /lib64/libc.so.6
> (gdb) bt
> #0  0x00000035bb07270e in free () from /lib64/libc.so.6
> #1  0x00000035bb0babf0 in freeaddrinfo () from /lib64/libc.so.6
> #2  0x00002abd0575b2bf in ~SocketAddress (this=0x3111c88) at qpid/sys/posix/SocketAddress.cpp:58
> #3  0x00002abd05d01a86 in ~Listener (this=0x3111b10) at ./qpid/sys/rdma/RdmaIO.h:176
> #4  0x00002abd05ae8a61 in ~RdmaIOProtocolFactory (this=0x310ed10) at /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/memory:259
> #5  0x00002abd052ff9c2 in std::_Rb_tree<std::string, std::pair<std::string const,
boost::shared_ptr<qpid::sys::ProtocolFactory> >, std::_Select1st<std::pair<std::string
const, boost::shared_ptr<qpid::sys::ProtocolFactory> > >, std::less<std::string>,
std::allocator<std::pair<std::string const, boost::shared_ptr<qpid::sys::ProtocolFactory>
> > >::_M_erase (this=0x310acb8, __x=0x31116d0) at /usr/include/boost/detail/sp_counted_base_gcc_x86.hpp:145
> #6  0x00002abd052f84a7 in ~Broker (this=0x310ab00) at /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/stl_tree.h:578
> #7  0x00000000004072d9 in QpiddBroker::execute (this=<value optimized out>, options=<value
optimized out>) at ./qpid/RefCounted.h:42
> #8  0x000000000040578f in main (argc=6, argv=0x7fff622649b8) at qpidd.cpp:80
> Last observed on r882182.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


Mime
View raw message