You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by simpel <me...@yahoo.com> on 2010/05/05 20:36:25 UTC

Linux activemq-cpp-3.1.2 crash

My program cored with the following stack trace. Looking at the code it seems
unlikely that the synchronization object has purevirtual lock() method.  Any
ideas what has gone wrong here? 

Thread 1 (process 19050):
#0  0x00f89402 in __kernel_vsyscall ()
#1  0x00ffddf0 in raise () from /lib/libc.so.6
#2  0x00fff701 in abort () from /lib/libc.so.6
#3  0x00db74d0 in __gnu_cxx::__verbose_terminate_handler () from
/usr/lib/libstdc++.so.6
#4  0x00db4f35 in ?? () from /usr/lib/libstdc++.so.6
#5  0x00db4f72 in std::terminate () from /usr/lib/libstdc++.so.6
#6  0x00db5695 in __cxa_pure_virtual () from /usr/lib/libstdc++.so.6
#7  0x081f2a5d in decaf::util::concurrent::Lock::lock (this=0xad1f8080)
    at
/root/P4/3pty/ActiveMQ/include/activemq-cpp-3.1.2/decaf/util/concurrent/Lock.h:96
#8  0x081f2bc8 in Lock (this=0xad1f8080, object=0x97d4280,
intiallyLocked=true)
    at
/root/P4/3pty/ActiveMQ/include/activemq-cpp-3.1.2/decaf/util/concurrent/Lock.h:70
#9  0x006e30df in activemq::core::ActiveMQConnection::onException ()
   from /usr/lib/libactivemq-cpp.so.9
#10 0x0076604b in activemq::transport::TransportFilter::fire () from
/usr/lib/libactivemq-cpp.so.9
#11 0x00766094 in activemq::transport::TransportFilter::onException ()
   from /usr/lib/libactivemq-cpp.so.9
#12 0x0076604b in activemq::transport::TransportFilter::fire () from
/usr/lib/libactivemq-cpp.so.9
#13 0x00766094 in activemq::transport::TransportFilter::onException ()
   from /usr/lib/libactivemq-cpp.so.9
#14 0x0076604b in activemq::transport::TransportFilter::fire () from
/usr/lib/libactivemq-cpp.so.9
#15 0x00766094 in activemq::transport::TransportFilter::onException ()
   from /usr/lib/libactivemq-cpp.so.9
#16 0x0078b74d in
activemq::transport::inactivity::InactivityMonitor::onException ()
   from /usr/lib/libactivemq-cpp.so.9
#17 0x0078dcfd in
activemq::transport::inactivity::AsyncSignalReadErrorkTask::iterate ()
   from /usr/lib/libactivemq-cpp.so.9
#18 0x0075dcd1 in activemq::threads::CompositeTaskRunner::iterate ()
   from /usr/lib/libactivemq-cpp.so.9
#19 0x0075d79c in activemq::threads::CompositeTaskRunner::run () from
/usr/lib/libactivemq-cpp.so.9
#20 0x009cca6d in decaf::lang::ThreadProperties::runCallback () from
/usr/lib/libactivemq-cpp.so.9
#21 0x009c9d77 in ?? () from /usr/lib/libactivemq-cpp.so.9
#22 0x003a373b in start_thread () from /lib/libpthread.so.0
#23 0x010a6cfe in clone () from /lib/libc.so.6

-- 
View this message in context: http://old.nabble.com/Linux-activemq-cpp-3.1.2-crash-tp28464828p28464828.html
Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.


Re: Linux activemq-cpp-3.1.2 crash

Posted by Timothy Bish <ta...@gmail.com>.
On Thu, 2010-05-06 at 06:43 -0700, simpel wrote:
> Hi Tim
> 
> In the onException() method of my consumer, I was closing the the connection
> and creating a new one to keep my consumer alive.  I changed the code to
> dispose of the connection in another thread (after the onExcetion() method
> returns, and the problem went away.  You would know this better, but I dont
> think there is an issue in the ActiveMQ-CPP library, this was my issue.
> 
> Interestingly enough this was working with ActiveMQ-CPP 2.1 on Linux before. 
> It was also working on windows (with MSVS build) with ActiveMQ-CPP-3.1.2. 
> 
> Thank you for your fast responses to my issue.
> 

Hard to say why it works one place and not another without seeing the
complete code sample but destroying an object from one of its callbacks
is not generally a good idea since the callback my still need to access
class member data as it completes.  In this case it would be using a
Mutex object to prevent onException from being called from more than one
Thread at a time.

If you use the Failover Tansport in CMS 3.1.2 you shouldn't need to do
anything to manage the reconnect of Connection to the Broker, fyi

Regards
Tim.

> 
> 
> 
> Timothy Bish wrote:
> > 
> > On Wed, 2010-05-05 at 13:11 -0700, simpel wrote:
> >> Hi Tim,
> >> I was not shutting down.  The application was still running when this
> >> exception occured.  
> >> 
> >> I was able to reproduce the problem by starting my application, and then
> >> shutdown my local activemq process.  As soon as the CMS detects the
> >> connection has terminated it gets into the 
> >> activemq::core::ActiveMQConnection::onException () method where the
> >> pure-virtual method invocation occurs.
> >> 
> > 
> > I've not seen any errors like this in testing, if you want to create a
> > new issue and provide a sample app along with steps to reproduce we can
> > try and investigate it.
> > 
> > Regards
> > Tim.
> > 
> >> 
> >> 
> >> Timothy Bish wrote:
> >> > 
> >> > On Wed, 2010-05-05 at 11:36 -0700, simpel wrote:
> >> >> My program cored with the following stack trace. Looking at the code
> >> it
> >> >> seems
> >> >> unlikely that the synchronization object has purevirtual lock()
> >> method. 
> >> >> Any
> >> >> ideas what has gone wrong here? 
> >> > 
> >> > Did you ensure that all your object created from the ActiveMQ-CPP
> >> > library were destroyed before your application called the
> >> > ActiveMQCPP::shutdownLibrary() method?
> >> > 
> >> > Regards
> >> > Tim
> >> > 
> >> >> 
> >> >> Thread 1 (process 19050):
> >> >> #0  0x00f89402 in __kernel_vsyscall ()
> >> >> #1  0x00ffddf0 in raise () from /lib/libc.so.6
> >> >> #2  0x00fff701 in abort () from /lib/libc.so.6
> >> >> #3  0x00db74d0 in __gnu_cxx::__verbose_terminate_handler () from
> >> >> /usr/lib/libstdc++.so.6
> >> >> #4  0x00db4f35 in ?? () from /usr/lib/libstdc++.so.6
> >> >> #5  0x00db4f72 in std::terminate () from /usr/lib/libstdc++.so.6
> >> >> #6  0x00db5695 in __cxa_pure_virtual () from /usr/lib/libstdc++.so.6
> >> >> #7  0x081f2a5d in decaf::util::concurrent::Lock::lock
> >> (this=0xad1f8080)
> >> >>     at
> >> >>
> >> /root/P4/3pty/ActiveMQ/include/activemq-cpp-3.1.2/decaf/util/concurrent/Lock.h:96
> >> >> #8  0x081f2bc8 in Lock (this=0xad1f8080, object=0x97d4280,
> >> >> intiallyLocked=true)
> >> >>     at
> >> >>
> >> /root/P4/3pty/ActiveMQ/include/activemq-cpp-3.1.2/decaf/util/concurrent/Lock.h:70
> >> >> #9  0x006e30df in activemq::core::ActiveMQConnection::onException ()
> >> >>    from /usr/lib/libactivemq-cpp.so.9
> >> >> #10 0x0076604b in activemq::transport::TransportFilter::fire () from
> >> >> /usr/lib/libactivemq-cpp.so.9
> >> >> #11 0x00766094 in activemq::transport::TransportFilter::onException ()
> >> >>    from /usr/lib/libactivemq-cpp.so.9
> >> >> #12 0x0076604b in activemq::transport::TransportFilter::fire () from
> >> >> /usr/lib/libactivemq-cpp.so.9
> >> >> #13 0x00766094 in activemq::transport::TransportFilter::onException ()
> >> >>    from /usr/lib/libactivemq-cpp.so.9
> >> >> #14 0x0076604b in activemq::transport::TransportFilter::fire () from
> >> >> /usr/lib/libactivemq-cpp.so.9
> >> >> #15 0x00766094 in activemq::transport::TransportFilter::onException ()
> >> >>    from /usr/lib/libactivemq-cpp.so.9
> >> >> #16 0x0078b74d in
> >> >> activemq::transport::inactivity::InactivityMonitor::onException ()
> >> >>    from /usr/lib/libactivemq-cpp.so.9
> >> >> #17 0x0078dcfd in
> >> >> activemq::transport::inactivity::AsyncSignalReadErrorkTask::iterate ()
> >> >>    from /usr/lib/libactivemq-cpp.so.9
> >> >> #18 0x0075dcd1 in activemq::threads::CompositeTaskRunner::iterate ()
> >> >>    from /usr/lib/libactivemq-cpp.so.9
> >> >> #19 0x0075d79c in activemq::threads::CompositeTaskRunner::run () from
> >> >> /usr/lib/libactivemq-cpp.so.9
> >> >> #20 0x009cca6d in decaf::lang::ThreadProperties::runCallback () from
> >> >> /usr/lib/libactivemq-cpp.so.9
> >> >> #21 0x009c9d77 in ?? () from /usr/lib/libactivemq-cpp.so.9
> >> >> #22 0x003a373b in start_thread () from /lib/libpthread.so.0
> >> >> #23 0x010a6cfe in clone () from /lib/libc.so.6
> >> >> 
> >> > 
> >> > -- 
> >> > Tim Bish
> >> > 
> >> > Open Source Integration: http://fusesource.com
> >> > ActiveMQ in Action: http://www.manning.com/snyder/
> >> > 
> >> > Follow me on Twitter: http://twitter.com/tabish121
> >> > My Blog: http://timbish.blogspot.com/
> >> > 
> >> > 
> >> > 
> >> 
> > 
> > -- 
> > Tim Bish
> > 
> > Open Source Integration: http://fusesource.com
> > ActiveMQ in Action: http://www.manning.com/snyder/
> > 
> > Follow me on Twitter: http://twitter.com/tabish121
> > My Blog: http://timbish.blogspot.com/
> > 
> > 
> > 
> 

-- 
Tim Bish

Open Source Integration: http://fusesource.com
ActiveMQ in Action: http://www.manning.com/snyder/

Follow me on Twitter: http://twitter.com/tabish121
My Blog: http://timbish.blogspot.com/


Re: Linux activemq-cpp-3.1.2 crash

Posted by simpel <me...@yahoo.com>.
Hi Tim

In the onException() method of my consumer, I was closing the the connection
and creating a new one to keep my consumer alive.  I changed the code to
dispose of the connection in another thread (after the onExcetion() method
returns, and the problem went away.  You would know this better, but I dont
think there is an issue in the ActiveMQ-CPP library, this was my issue.

Interestingly enough this was working with ActiveMQ-CPP 2.1 on Linux before. 
It was also working on windows (with MSVS build) with ActiveMQ-CPP-3.1.2. 

Thank you for your fast responses to my issue.




Timothy Bish wrote:
> 
> On Wed, 2010-05-05 at 13:11 -0700, simpel wrote:
>> Hi Tim,
>> I was not shutting down.  The application was still running when this
>> exception occured.  
>> 
>> I was able to reproduce the problem by starting my application, and then
>> shutdown my local activemq process.  As soon as the CMS detects the
>> connection has terminated it gets into the 
>> activemq::core::ActiveMQConnection::onException () method where the
>> pure-virtual method invocation occurs.
>> 
> 
> I've not seen any errors like this in testing, if you want to create a
> new issue and provide a sample app along with steps to reproduce we can
> try and investigate it.
> 
> Regards
> Tim.
> 
>> 
>> 
>> Timothy Bish wrote:
>> > 
>> > On Wed, 2010-05-05 at 11:36 -0700, simpel wrote:
>> >> My program cored with the following stack trace. Looking at the code
>> it
>> >> seems
>> >> unlikely that the synchronization object has purevirtual lock()
>> method. 
>> >> Any
>> >> ideas what has gone wrong here? 
>> > 
>> > Did you ensure that all your object created from the ActiveMQ-CPP
>> > library were destroyed before your application called the
>> > ActiveMQCPP::shutdownLibrary() method?
>> > 
>> > Regards
>> > Tim
>> > 
>> >> 
>> >> Thread 1 (process 19050):
>> >> #0  0x00f89402 in __kernel_vsyscall ()
>> >> #1  0x00ffddf0 in raise () from /lib/libc.so.6
>> >> #2  0x00fff701 in abort () from /lib/libc.so.6
>> >> #3  0x00db74d0 in __gnu_cxx::__verbose_terminate_handler () from
>> >> /usr/lib/libstdc++.so.6
>> >> #4  0x00db4f35 in ?? () from /usr/lib/libstdc++.so.6
>> >> #5  0x00db4f72 in std::terminate () from /usr/lib/libstdc++.so.6
>> >> #6  0x00db5695 in __cxa_pure_virtual () from /usr/lib/libstdc++.so.6
>> >> #7  0x081f2a5d in decaf::util::concurrent::Lock::lock
>> (this=0xad1f8080)
>> >>     at
>> >>
>> /root/P4/3pty/ActiveMQ/include/activemq-cpp-3.1.2/decaf/util/concurrent/Lock.h:96
>> >> #8  0x081f2bc8 in Lock (this=0xad1f8080, object=0x97d4280,
>> >> intiallyLocked=true)
>> >>     at
>> >>
>> /root/P4/3pty/ActiveMQ/include/activemq-cpp-3.1.2/decaf/util/concurrent/Lock.h:70
>> >> #9  0x006e30df in activemq::core::ActiveMQConnection::onException ()
>> >>    from /usr/lib/libactivemq-cpp.so.9
>> >> #10 0x0076604b in activemq::transport::TransportFilter::fire () from
>> >> /usr/lib/libactivemq-cpp.so.9
>> >> #11 0x00766094 in activemq::transport::TransportFilter::onException ()
>> >>    from /usr/lib/libactivemq-cpp.so.9
>> >> #12 0x0076604b in activemq::transport::TransportFilter::fire () from
>> >> /usr/lib/libactivemq-cpp.so.9
>> >> #13 0x00766094 in activemq::transport::TransportFilter::onException ()
>> >>    from /usr/lib/libactivemq-cpp.so.9
>> >> #14 0x0076604b in activemq::transport::TransportFilter::fire () from
>> >> /usr/lib/libactivemq-cpp.so.9
>> >> #15 0x00766094 in activemq::transport::TransportFilter::onException ()
>> >>    from /usr/lib/libactivemq-cpp.so.9
>> >> #16 0x0078b74d in
>> >> activemq::transport::inactivity::InactivityMonitor::onException ()
>> >>    from /usr/lib/libactivemq-cpp.so.9
>> >> #17 0x0078dcfd in
>> >> activemq::transport::inactivity::AsyncSignalReadErrorkTask::iterate ()
>> >>    from /usr/lib/libactivemq-cpp.so.9
>> >> #18 0x0075dcd1 in activemq::threads::CompositeTaskRunner::iterate ()
>> >>    from /usr/lib/libactivemq-cpp.so.9
>> >> #19 0x0075d79c in activemq::threads::CompositeTaskRunner::run () from
>> >> /usr/lib/libactivemq-cpp.so.9
>> >> #20 0x009cca6d in decaf::lang::ThreadProperties::runCallback () from
>> >> /usr/lib/libactivemq-cpp.so.9
>> >> #21 0x009c9d77 in ?? () from /usr/lib/libactivemq-cpp.so.9
>> >> #22 0x003a373b in start_thread () from /lib/libpthread.so.0
>> >> #23 0x010a6cfe in clone () from /lib/libc.so.6
>> >> 
>> > 
>> > -- 
>> > Tim Bish
>> > 
>> > Open Source Integration: http://fusesource.com
>> > ActiveMQ in Action: http://www.manning.com/snyder/
>> > 
>> > Follow me on Twitter: http://twitter.com/tabish121
>> > My Blog: http://timbish.blogspot.com/
>> > 
>> > 
>> > 
>> 
> 
> -- 
> Tim Bish
> 
> Open Source Integration: http://fusesource.com
> ActiveMQ in Action: http://www.manning.com/snyder/
> 
> Follow me on Twitter: http://twitter.com/tabish121
> My Blog: http://timbish.blogspot.com/
> 
> 
> 

-- 
View this message in context: http://old.nabble.com/Linux-activemq-cpp-3.1.2-crash-tp28464828p28473801.html
Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.


Re: Linux activemq-cpp-3.1.2 crash

Posted by Timothy Bish <ta...@gmail.com>.
On Wed, 2010-05-05 at 13:11 -0700, simpel wrote:
> Hi Tim,
> I was not shutting down.  The application was still running when this
> exception occured.  
> 
> I was able to reproduce the problem by starting my application, and then
> shutdown my local activemq process.  As soon as the CMS detects the
> connection has terminated it gets into the 
> activemq::core::ActiveMQConnection::onException () method where the
> pure-virtual method invocation occurs.
> 

I've not seen any errors like this in testing, if you want to create a
new issue and provide a sample app along with steps to reproduce we can
try and investigate it.

Regards
Tim.

> 
> 
> Timothy Bish wrote:
> > 
> > On Wed, 2010-05-05 at 11:36 -0700, simpel wrote:
> >> My program cored with the following stack trace. Looking at the code it
> >> seems
> >> unlikely that the synchronization object has purevirtual lock() method. 
> >> Any
> >> ideas what has gone wrong here? 
> > 
> > Did you ensure that all your object created from the ActiveMQ-CPP
> > library were destroyed before your application called the
> > ActiveMQCPP::shutdownLibrary() method?
> > 
> > Regards
> > Tim
> > 
> >> 
> >> Thread 1 (process 19050):
> >> #0  0x00f89402 in __kernel_vsyscall ()
> >> #1  0x00ffddf0 in raise () from /lib/libc.so.6
> >> #2  0x00fff701 in abort () from /lib/libc.so.6
> >> #3  0x00db74d0 in __gnu_cxx::__verbose_terminate_handler () from
> >> /usr/lib/libstdc++.so.6
> >> #4  0x00db4f35 in ?? () from /usr/lib/libstdc++.so.6
> >> #5  0x00db4f72 in std::terminate () from /usr/lib/libstdc++.so.6
> >> #6  0x00db5695 in __cxa_pure_virtual () from /usr/lib/libstdc++.so.6
> >> #7  0x081f2a5d in decaf::util::concurrent::Lock::lock (this=0xad1f8080)
> >>     at
> >> /root/P4/3pty/ActiveMQ/include/activemq-cpp-3.1.2/decaf/util/concurrent/Lock.h:96
> >> #8  0x081f2bc8 in Lock (this=0xad1f8080, object=0x97d4280,
> >> intiallyLocked=true)
> >>     at
> >> /root/P4/3pty/ActiveMQ/include/activemq-cpp-3.1.2/decaf/util/concurrent/Lock.h:70
> >> #9  0x006e30df in activemq::core::ActiveMQConnection::onException ()
> >>    from /usr/lib/libactivemq-cpp.so.9
> >> #10 0x0076604b in activemq::transport::TransportFilter::fire () from
> >> /usr/lib/libactivemq-cpp.so.9
> >> #11 0x00766094 in activemq::transport::TransportFilter::onException ()
> >>    from /usr/lib/libactivemq-cpp.so.9
> >> #12 0x0076604b in activemq::transport::TransportFilter::fire () from
> >> /usr/lib/libactivemq-cpp.so.9
> >> #13 0x00766094 in activemq::transport::TransportFilter::onException ()
> >>    from /usr/lib/libactivemq-cpp.so.9
> >> #14 0x0076604b in activemq::transport::TransportFilter::fire () from
> >> /usr/lib/libactivemq-cpp.so.9
> >> #15 0x00766094 in activemq::transport::TransportFilter::onException ()
> >>    from /usr/lib/libactivemq-cpp.so.9
> >> #16 0x0078b74d in
> >> activemq::transport::inactivity::InactivityMonitor::onException ()
> >>    from /usr/lib/libactivemq-cpp.so.9
> >> #17 0x0078dcfd in
> >> activemq::transport::inactivity::AsyncSignalReadErrorkTask::iterate ()
> >>    from /usr/lib/libactivemq-cpp.so.9
> >> #18 0x0075dcd1 in activemq::threads::CompositeTaskRunner::iterate ()
> >>    from /usr/lib/libactivemq-cpp.so.9
> >> #19 0x0075d79c in activemq::threads::CompositeTaskRunner::run () from
> >> /usr/lib/libactivemq-cpp.so.9
> >> #20 0x009cca6d in decaf::lang::ThreadProperties::runCallback () from
> >> /usr/lib/libactivemq-cpp.so.9
> >> #21 0x009c9d77 in ?? () from /usr/lib/libactivemq-cpp.so.9
> >> #22 0x003a373b in start_thread () from /lib/libpthread.so.0
> >> #23 0x010a6cfe in clone () from /lib/libc.so.6
> >> 
> > 
> > -- 
> > Tim Bish
> > 
> > Open Source Integration: http://fusesource.com
> > ActiveMQ in Action: http://www.manning.com/snyder/
> > 
> > Follow me on Twitter: http://twitter.com/tabish121
> > My Blog: http://timbish.blogspot.com/
> > 
> > 
> > 
> 

-- 
Tim Bish

Open Source Integration: http://fusesource.com
ActiveMQ in Action: http://www.manning.com/snyder/

Follow me on Twitter: http://twitter.com/tabish121
My Blog: http://timbish.blogspot.com/


Re: Linux activemq-cpp-3.1.2 crash

Posted by simpel <me...@yahoo.com>.
Hi Tim,
I was not shutting down.  The application was still running when this
exception occured.  

I was able to reproduce the problem by starting my application, and then
shutdown my local activemq process.  As soon as the CMS detects the
connection has terminated it gets into the 
activemq::core::ActiveMQConnection::onException () method where the
pure-virtual method invocation occurs.



Timothy Bish wrote:
> 
> On Wed, 2010-05-05 at 11:36 -0700, simpel wrote:
>> My program cored with the following stack trace. Looking at the code it
>> seems
>> unlikely that the synchronization object has purevirtual lock() method. 
>> Any
>> ideas what has gone wrong here? 
> 
> Did you ensure that all your object created from the ActiveMQ-CPP
> library were destroyed before your application called the
> ActiveMQCPP::shutdownLibrary() method?
> 
> Regards
> Tim
> 
>> 
>> Thread 1 (process 19050):
>> #0  0x00f89402 in __kernel_vsyscall ()
>> #1  0x00ffddf0 in raise () from /lib/libc.so.6
>> #2  0x00fff701 in abort () from /lib/libc.so.6
>> #3  0x00db74d0 in __gnu_cxx::__verbose_terminate_handler () from
>> /usr/lib/libstdc++.so.6
>> #4  0x00db4f35 in ?? () from /usr/lib/libstdc++.so.6
>> #5  0x00db4f72 in std::terminate () from /usr/lib/libstdc++.so.6
>> #6  0x00db5695 in __cxa_pure_virtual () from /usr/lib/libstdc++.so.6
>> #7  0x081f2a5d in decaf::util::concurrent::Lock::lock (this=0xad1f8080)
>>     at
>> /root/P4/3pty/ActiveMQ/include/activemq-cpp-3.1.2/decaf/util/concurrent/Lock.h:96
>> #8  0x081f2bc8 in Lock (this=0xad1f8080, object=0x97d4280,
>> intiallyLocked=true)
>>     at
>> /root/P4/3pty/ActiveMQ/include/activemq-cpp-3.1.2/decaf/util/concurrent/Lock.h:70
>> #9  0x006e30df in activemq::core::ActiveMQConnection::onException ()
>>    from /usr/lib/libactivemq-cpp.so.9
>> #10 0x0076604b in activemq::transport::TransportFilter::fire () from
>> /usr/lib/libactivemq-cpp.so.9
>> #11 0x00766094 in activemq::transport::TransportFilter::onException ()
>>    from /usr/lib/libactivemq-cpp.so.9
>> #12 0x0076604b in activemq::transport::TransportFilter::fire () from
>> /usr/lib/libactivemq-cpp.so.9
>> #13 0x00766094 in activemq::transport::TransportFilter::onException ()
>>    from /usr/lib/libactivemq-cpp.so.9
>> #14 0x0076604b in activemq::transport::TransportFilter::fire () from
>> /usr/lib/libactivemq-cpp.so.9
>> #15 0x00766094 in activemq::transport::TransportFilter::onException ()
>>    from /usr/lib/libactivemq-cpp.so.9
>> #16 0x0078b74d in
>> activemq::transport::inactivity::InactivityMonitor::onException ()
>>    from /usr/lib/libactivemq-cpp.so.9
>> #17 0x0078dcfd in
>> activemq::transport::inactivity::AsyncSignalReadErrorkTask::iterate ()
>>    from /usr/lib/libactivemq-cpp.so.9
>> #18 0x0075dcd1 in activemq::threads::CompositeTaskRunner::iterate ()
>>    from /usr/lib/libactivemq-cpp.so.9
>> #19 0x0075d79c in activemq::threads::CompositeTaskRunner::run () from
>> /usr/lib/libactivemq-cpp.so.9
>> #20 0x009cca6d in decaf::lang::ThreadProperties::runCallback () from
>> /usr/lib/libactivemq-cpp.so.9
>> #21 0x009c9d77 in ?? () from /usr/lib/libactivemq-cpp.so.9
>> #22 0x003a373b in start_thread () from /lib/libpthread.so.0
>> #23 0x010a6cfe in clone () from /lib/libc.so.6
>> 
> 
> -- 
> Tim Bish
> 
> Open Source Integration: http://fusesource.com
> ActiveMQ in Action: http://www.manning.com/snyder/
> 
> Follow me on Twitter: http://twitter.com/tabish121
> My Blog: http://timbish.blogspot.com/
> 
> 
> 

-- 
View this message in context: http://old.nabble.com/Linux-activemq-cpp-3.1.2-crash-tp28464828p28465889.html
Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.


Re: Linux activemq-cpp-3.1.2 crash

Posted by Timothy Bish <ta...@gmail.com>.
On Wed, 2010-05-05 at 11:36 -0700, simpel wrote:
> My program cored with the following stack trace. Looking at the code it seems
> unlikely that the synchronization object has purevirtual lock() method.  Any
> ideas what has gone wrong here? 

Did you ensure that all your object created from the ActiveMQ-CPP
library were destroyed before your application called the
ActiveMQCPP::shutdownLibrary() method?

Regards
Tim

> 
> Thread 1 (process 19050):
> #0  0x00f89402 in __kernel_vsyscall ()
> #1  0x00ffddf0 in raise () from /lib/libc.so.6
> #2  0x00fff701 in abort () from /lib/libc.so.6
> #3  0x00db74d0 in __gnu_cxx::__verbose_terminate_handler () from
> /usr/lib/libstdc++.so.6
> #4  0x00db4f35 in ?? () from /usr/lib/libstdc++.so.6
> #5  0x00db4f72 in std::terminate () from /usr/lib/libstdc++.so.6
> #6  0x00db5695 in __cxa_pure_virtual () from /usr/lib/libstdc++.so.6
> #7  0x081f2a5d in decaf::util::concurrent::Lock::lock (this=0xad1f8080)
>     at
> /root/P4/3pty/ActiveMQ/include/activemq-cpp-3.1.2/decaf/util/concurrent/Lock.h:96
> #8  0x081f2bc8 in Lock (this=0xad1f8080, object=0x97d4280,
> intiallyLocked=true)
>     at
> /root/P4/3pty/ActiveMQ/include/activemq-cpp-3.1.2/decaf/util/concurrent/Lock.h:70
> #9  0x006e30df in activemq::core::ActiveMQConnection::onException ()
>    from /usr/lib/libactivemq-cpp.so.9
> #10 0x0076604b in activemq::transport::TransportFilter::fire () from
> /usr/lib/libactivemq-cpp.so.9
> #11 0x00766094 in activemq::transport::TransportFilter::onException ()
>    from /usr/lib/libactivemq-cpp.so.9
> #12 0x0076604b in activemq::transport::TransportFilter::fire () from
> /usr/lib/libactivemq-cpp.so.9
> #13 0x00766094 in activemq::transport::TransportFilter::onException ()
>    from /usr/lib/libactivemq-cpp.so.9
> #14 0x0076604b in activemq::transport::TransportFilter::fire () from
> /usr/lib/libactivemq-cpp.so.9
> #15 0x00766094 in activemq::transport::TransportFilter::onException ()
>    from /usr/lib/libactivemq-cpp.so.9
> #16 0x0078b74d in
> activemq::transport::inactivity::InactivityMonitor::onException ()
>    from /usr/lib/libactivemq-cpp.so.9
> #17 0x0078dcfd in
> activemq::transport::inactivity::AsyncSignalReadErrorkTask::iterate ()
>    from /usr/lib/libactivemq-cpp.so.9
> #18 0x0075dcd1 in activemq::threads::CompositeTaskRunner::iterate ()
>    from /usr/lib/libactivemq-cpp.so.9
> #19 0x0075d79c in activemq::threads::CompositeTaskRunner::run () from
> /usr/lib/libactivemq-cpp.so.9
> #20 0x009cca6d in decaf::lang::ThreadProperties::runCallback () from
> /usr/lib/libactivemq-cpp.so.9
> #21 0x009c9d77 in ?? () from /usr/lib/libactivemq-cpp.so.9
> #22 0x003a373b in start_thread () from /lib/libpthread.so.0
> #23 0x010a6cfe in clone () from /lib/libc.so.6
> 

-- 
Tim Bish

Open Source Integration: http://fusesource.com
ActiveMQ in Action: http://www.manning.com/snyder/

Follow me on Twitter: http://twitter.com/tabish121
My Blog: http://timbish.blogspot.com/