activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Oscar Pernas <os...@pernas.es>
Subject Re: AMQCPP: unexpected exception
Date Mon, 07 Mar 2011 01:27:51 GMT
Hi all,

Also, if you run a blocking producer (with connection->start() blocking) to
a not existing broker, and try to close the producer after a while, the
connection->start crash.

2011-03-07 02:27:33 DEBUG (ActiveInterface:671) - ActiveInterface::shutdown.
Shutting down singleton manager.
2011-03-07 02:27:33 INFO  (ActiveProducer:901) - Producer::close. Closing
producer failover://(tcp://localhost:61616?connection.useAsyncSend=true)
alarmas...
2011-03-07 02:27:33 INFO  (ActiveProducer:915) - Producer::deleting
destination...
2011-03-07 02:27:33 INFO  (ActiveProducer:927) - Producer::deleting
producer...
2011-03-07 02:27:33 INFO  (ActiveProducer:940) - Producer::closing
session...
2011-03-07 02:27:33 INFO  (ActiveProducer:944) - Producer::closing
connection...
2011-03-07 02:27:48 INFO  (ActiveProducer:948) - Producer::closing
connection... Producer::cleaning up CMSException: No valid response received
for command: RemoveInfo { commandId = 2, responseRequired = true, ObjectId =
ID:artemisa-47349-1299461248159-0:0, LastDeliveredSequenceId = 0 }, check
broker.
2011-03-07 02:27:48 INFO  (ActiveProducer:954) - Producer::deleting temporal
destination...
2011-03-07 02:27:48 INFO  (ActiveProducer:965) - Producer::deleting
session...
2011-03-07 02:27:48 INFO  (ActiveProducer:976) - Producer::deleting
connection...
pure virtual method called
terminate called without an active exception






2011/3/7 Oscar Pernas <oscar@pernas.es>

> Yes, It's probably the same issue. I've resolved the destructor stucks
> (partially) deleting connection and session before delete the consumer.
> Perhaps you should catch a decaf exception that sometimes is thrown.
>
> Tell me if it helps you.
>
>
> regards
>
> 2011/3/4 Henrique Magarotto <magarotto@gmail.com>
>
> Hi Tim and Oscar,
>> thanks for your attention,
>>
>> So, in my case i got frozen in a commit attempt.
>> But really, testing without transaction and MessageListener i got
>> frozen in consumer destructor too.
>> Maybe it's the same reason for both cases. I tested with several
>> configurations to try avoid freezes for both  cases.
>> I opened the AMQCPP-354 issue with 'unexpected exception' report, but
>> i think that these cases deserve more one (or two) new issues in Jira
>> for later investigation.
>>
>> regards
>> Henrique
>>
>> Following how to reproduce the cases:
>>
>> MESSAGELISTENER WITH TRANSACTION, FREEZES IN COMMIT
>> MessageListener consumer destructor freezes in commit:
>> 1- Start ActiveMQ
>> 2- Start 'MessageListener' consumer './activemqTest -l -c1 -d10000'
>> 3- Send one message './activemqTest -p1'
>> 4- Wait consumer 'Starting delay'
>> 5- Stop ActiveMQ
>> 6- Consumer will try commit
>> 8- Freezes (see below 'BACKTRACE 1')!!!
>>
>>
>> MESSAGELISTENER WITHOUT TRANSACTION, FREEZES IN DESTRUCTOR
>> MessageListener consumer destructor freezes (apply changes in test code):
>> 1- Start ActiveMQ
>> 2- Start 'MessageListener' consumer './activemqTest -l -c1 -d10000'
>> 3- Send one message './activemqTest -p1'
>> 4- Wait consumer 'Starting delay'
>> 5- Stop ActiveMQ
>> 6- Wait consumer delay finishes 'Delay finish'
>> 7- Try kill consumer ( not kill -9 :-) )
>> 8- Freezes (see below 'BACKTRACE 2')!!!
>>
>> Changes in test:
>> @@ -440,6 +440,7 @@
>>              if(_delay) {
>>                  std::cout<<"Starting delay..."<<std::endl;
>>                  stopCheck(_delay);
>> +                std::cout<<"Delay finish..."<<std::endl;
>>              }
>>
>>          } catch (CMSException& e) {
>> @@ -561,7 +562,7 @@
>>
>>      void loadEndPoins() {
>>          for(int i=0; i<_consumer;i++) {
>> -            _endPointList.push_back( new
>> Consumer(&_poolManager,"TEST.FOO",_delay,_useListener) );
>> +            _endPointList.push_back( new
>> Consumer(&_poolManager,"TEST.FOO",_delay,_useListener,false) );
>>          }
>>          for(int i=0; i<_producer;i++) {
>>              _endPointList.push_back( new
>> Producer(&_poolManager,"TEST.FOO",_delay,_numMessages) );
>>
>>
>> BACKTRACE 1:
>>
>> Thread 1:
>> #0  0x00eed422 in __kernel_vsyscall ()
>> #1  0x00468b5d in pthread_join (threadid=3061414768,
>> thread_return=0xbf951e8c) at pthread_join.c:89
>> #2  0x00be23c0 in decaf::lang::Thread::join (this=0x9551574) at
>> decaf/lang/Thread.cpp:421
>> #3  0x0804c9f1 in AppTest::joinEndPoins (this=0xbf951f14) at main.cpp:586
>> #4  0x0804c678 in AppTest::run (this=0xbf951f14) at main.cpp:555
>> #5  0x0804a33c in main (argc=4, argv=0xbf952034) at main.cpp:633
>>
>> Thread 2:
>> #0  0x00eed422 in __kernel_vsyscall ()
>> #1  0x0046c015 in pthread_cond_wait@@GLIBC_2.3.2 () at
>> ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:122
>> #2  0x003259dd in __pthread_cond_wait (cond=0x9547e38,
>> mutex=0x9547e08) at forward.c:139
>> #3  0x00bb06a9 in
>> decaf::internal::util::concurrent::ConditionImpl::wait
>> (condition=0x9547e38) at
>> decaf/internal/util/concurrent/unix/ConditionImpl.cpp:94
>> #4  0x00c21353 in decaf::util::concurrent::Mutex::wait
>> (this=0x9547d6c) at decaf/util/concurrent/Mutex.cpp:95
>> #5  0x0094c9c5 in activemq::threads::CompositeTaskRunner::run
>> (this=0x9547d48) at activemq/threads/CompositeTaskRunner.cpp:118
>> #6  0x00be3cf1 in decaf::lang::ThreadProperties::runCallback
>> (properties=0x9547e90) at decaf/lang/Thread.cpp:135
>> #7  0x00be2847 in threadWorker (arg=0x9547e90) at
>> decaf/lang/Thread.cpp:188
>> #8  0x0046796e in start_thread (arg=0xb7799b70) at pthread_create.c:300
>> #9  0x00318a4e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
>>
>> Thread 3:
>> #0  0x00eed422 in __kernel_vsyscall ()
>> #1  0x0046eaf9 in __lll_lock_wait () at
>> ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/lowlevellock.S:142
>> #2  0x0046a13b in _L_lock_748 () from /lib/tls/i686/cmov/libpthread.so.0
>> #3  0x00469f61 in __pthread_mutex_lock (mutex=0x95523a8) at
>> pthread_mutex_lock.c:61
>> #4  0x00325ba6 in pthread_mutex_lock (mutex=0x95523a8) at forward.c:182
>> #5  0x00bb0aa1 in decaf::internal::util::concurrent::MutexImpl::lock
>> (handle=0x95523a8) at
>> decaf/internal/util/concurrent/unix/MutexImpl.cpp:71
>> #6  0x00c21412 in decaf::util::concurrent::Mutex::lock
>> (this=0x95522bc) at decaf/util/concurrent/Mutex.cpp:75
>> #7  0x00915770 in
>>
>> decaf::util::StlQueue<decaf::lang::Pointer<activemq::commands::MessageDispatch,
>> decaf::util::concurrent::atomic::AtomicRefCounter> >::lock
>> (this=0x95522a8)
>>     at ./decaf/util/StlQueue.h:253
>> #8  activemq::core::MessageDispatchChannel::lock (this=0x95522a8) at
>> activemq/core/MessageDispatchChannel.h:153
>> #9  0x00c20ab5 in decaf::util::concurrent::Lock::lock
>> (this=0xb6f97fe4) at decaf/util/concurrent/Lock.cpp:54
>> #10 0x00c20c08 in Lock (this=0xfffffe00, object=0x95523a8,
>> intiallyLocked=true) at decaf/util/concurrent/Lock.cpp:32
>> #11 0x008de102 in
>> activemq::core::ActiveMQConsumer::clearMessagesInProgress
>> (this=0x9552270) at activemq/core/ActiveMQConsumer.cpp:1112
>> #12 0x008ff15c in
>> activemq::core::ActiveMQSession::clearMessagesInProgress
>> (this=0x9551b90) at activemq/core/ActiveMQSession.cpp:239
>> #13 0x008c8543 in
>> activemq::core::ActiveMQConnection::transportInterrupted
>> (this=0x9548210) at activemq/core/ActiveMQConnection.cpp:704
>> #14 0x00953b34 in
>> activemq::transport::TransportFilter::transportInterrupted
>> (this=0x95481c0) at activemq/transport/TransportFilter.cpp:67
>> #15 0x009687ae in
>> activemq::transport::failover::FailoverTransport::handleTransportFailure
>> (this=0x9547a38, error=...) at
>> activemq/transport/failover/FailoverTransport.cpp:476
>> #16 0x0097406c in
>> activemq::transport::failover::FailoverTransportListener::onException
>> (this=0x9547878, ex=...) at
>> activemq/transport/failover/FailoverTransportListener.cpp:97
>> #17 0x00953c0b in activemq::transport::TransportFilter::fire
>> (this=0x9549d80, ex=...) at activemq/transport/TransportFilter.cpp:49
>> #18 0x00953c64 in activemq::transport::TransportFilter::onException
>> (this=0x9549d80, ex=...) at activemq/transport/TransportFilter.cpp:41
>> #19 0x00953c0b in activemq::transport::TransportFilter::fire
>> (this=0x95497f0, ex=...) at activemq/transport/TransportFilter.cpp:49
>> #20 0x00953c64 in activemq::transport::TransportFilter::onException
>> (this=0x95497f0, ex=...) at activemq/transport/TransportFilter.cpp:41
>> #21 0x00951b13 in activemq::transport::IOTransport::fire
>> (this=0x95497a0, ex=...) at activemq/transport/IOTransport.cpp:73
>> #22 0x009523bf in activemq::transport::IOTransport::run
>> (this=0x95497a0) at activemq/transport/IOTransport.cpp:246
>> #23 0x00be3cf1 in decaf::lang::ThreadProperties::runCallback
>> (properties=0x9549ea0) at decaf/lang/Thread.cpp:135
>> #24 0x00be2847 in threadWorker (arg=0x9549ea0) at
>> decaf/lang/Thread.cpp:188
>> #25 0x0046796e in start_thread (arg=0xb6f98b70) at pthread_create.c:300
>> #26 0x00318a4e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
>>
>> Thread 4:
>> #0  0x00eed422 in __kernel_vsyscall ()
>> #1  0x0046c015 in pthread_cond_wait@@GLIBC_2.3.2 () at
>> ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:122
>> #2  0x003259dd in __pthread_cond_wait (cond=0x95516c8,
>> mutex=0x9551698) at forward.c:139
>> #3  0x00bb06a9 in
>> decaf::internal::util::concurrent::ConditionImpl::wait
>> (condition=0x95516c8) at
>> decaf/internal/util/concurrent/unix/ConditionImpl.cpp:94
>> #4  0x00c21353 in decaf::util::concurrent::Mutex::wait
>> (this=0x9551584) at decaf/util/concurrent/Mutex.cpp:95
>> #5  0x00c2029a in decaf::util::concurrent::CountDownLatch::await
>> (this=0x955157c) at decaf/util/concurrent/CountDownLatch.cpp:56
>> #6  0x0804af84 in JMSEndPointThread::stopCheck (this=0x9551574,
>> timeOut=-1) at main.cpp:226
>> #7  0x0804bb46 in Consumer::run (this=0x9551570) at main.cpp:379
>> #8  0x00be3cf1 in decaf::lang::ThreadProperties::runCallback
>> (properties=0x95515b0) at decaf/lang/Thread.cpp:135
>> #9  0x00be2847 in threadWorker (arg=0x95515b0) at
>> decaf/lang/Thread.cpp:188
>> #10 0x0046796e in start_thread (arg=0xb6797b70) at pthread_create.c:300
>> #11 0x00318a4e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
>>
>> Thread 5:
>> #0  0x00eed422 in __kernel_vsyscall ()
>> #1  0x0046eaf9 in __lll_lock_wait () at
>> ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/lowlevellock.S:142
>> #2  0x0046a13b in _L_lock_748 () from /lib/tls/i686/cmov/libpthread.so.0
>> #3  0x00469f61 in __pthread_mutex_lock (mutex=0x95475e0) at
>> pthread_mutex_lock.c:61
>> #4  0x00325ba6 in pthread_mutex_lock (mutex=0x95475e0) at forward.c:182
>> #5  0x00bb0aa1 in decaf::internal::util::concurrent::MutexImpl::lock
>> (handle=0x95475e0) at
>> decaf/internal/util/concurrent/unix/MutexImpl.cpp:71
>> #6  0x00c21412 in decaf::util::concurrent::Mutex::lock
>> (this=0x9547a88) at decaf/util/concurrent/Mutex.cpp:75
>> #7  0x00c20ab5 in decaf::util::concurrent::Lock::lock
>> (this=0xb5f95ce0) at decaf/util/concurrent/Lock.cpp:54
>> #8  0x00c20c08 in Lock (this=0xfffffe00, object=0x95475e0,
>> intiallyLocked=true) at decaf/util/concurrent/Lock.cpp:32
>> #9  0x0096b8fd in
>> activemq::transport::failover::FailoverTransport::oneway
>> (this=0x9547a38, command=...) at
>> activemq/transport/failover/FailoverTransport.cpp:186
>> #10 0x00957f9f in
>> activemq::transport::correlator::ResponseCorrelator::oneway
>> (this=0x95481c0, command=...) at
>> activemq/transport/correlator/ResponseCorrelator.cpp:82
>> #11 0x008c13be in activemq::core::ActiveMQConnection::oneway
>> (this=0x9548210, command=...) at
>> activemq/core/ActiveMQConnection.cpp:741
>> #12 0x00900a4f in activemq::core::ActiveMQSession::oneway
>> (this=0x9551b90, command=...) at activemq/core/ActiveMQSession.cpp:903
>> #13 0x008e5a1c in activemq::core::ActiveMQConsumer::acknowledge
>> (this=0x9552270) at activemq/core/ActiveMQConsumer.cpp:860
>> #14 0x008ef885 in
>> activemq::core::TransactionSynhcronization::beforeEnd (this=0x95529e8)
>> at activemq/core/ActiveMQConsumer.cpp:85
>> #15 0x00910588 in
>> activemq::core::ActiveMQTransactionContext::beforeEnd (this=0x9551dc8)
>> at activemq/core/ActiveMQTransactionContext.cpp:192
>> #16 0x00910d63 in activemq::core::ActiveMQTransactionContext::commit
>> (this=0x9551dc8) at activemq/core/ActiveMQTransactionContext.cpp:127
>> #17 0x008fe460 in activemq::core::ActiveMQSession::commit
>> (this=0x9551b90) at activemq/core/ActiveMQSession.cpp:189
>> #18 0x007ec1a0 in activemq::cmsutil::PooledSession::commit
>> (this=0x9551f38) at activemq/cmsutil/PooledSession.h:87
>> #19 0x0804c0fb in Consumer::onMessage (this=0x9551570,
>> message=0x9552ec0) at main.cpp:455
>> #20 0x008e972f in activemq::core::ActiveMQConsumer::dispatch
>> (this=0x9552270, dispatch=...) at
>> activemq/core/ActiveMQConsumer.cpp:1018
>> #21 0x0090d5c3 in activemq::core::ActiveMQSessionExecutor::dispatch
>> (this=0x9551e78, dispatch=...) at
>> activemq/core/ActiveMQSessionExecutor.cpp:129
>> #22 0x0090d993 in activemq::core::ActiveMQSessionExecutor::iterate
>> (this=0x9551e78) at activemq/core/ActiveMQSessionExecutor.cpp:166
>> #23 0x009507f3 in activemq::threads::DedicatedTaskRunner::run
>> (this=0x9552550) at activemq/threads/DedicatedTaskRunner.cpp:111
>> #24 0x00be3cf1 in decaf::lang::ThreadProperties::runCallback
>> (properties=0x9551ad8) at decaf/lang/Thread.cpp:135
>> #25 0x00be2847 in threadWorker (arg=0x9551ad8) at
>> decaf/lang/Thread.cpp:188
>> #26 0x0046796e in start_thread (arg=0xb5f96b70) at pthread_create.c:300
>> #27 0x00318a4e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
>>
>>
>>
>> BACKTRACE 2:
>>
>> Thread 1:
>> #0  0x0079b422 in __kernel_vsyscall ()
>> #1  0x008bfb5d in pthread_join (threadid=3061021552,
>> thread_return=0xbfbff07c) at pthread_join.c:89
>> #2  0x0132a3c0 in decaf::lang::Thread::join (this=0x9be0574) at
>> decaf/lang/Thread.cpp:421
>> #3  0x0804ca15 in AppTest::joinEndPoins (this=0xbfbff104) at main.cpp:587
>> #4  0x0804c69c in AppTest::run (this=0xbfbff104) at main.cpp:556
>> #5  0x0804a33c in main (argc=4, argv=0xbfbff224) at main.cpp:634
>>
>> Thread 2:
>> #0  0x0079b422 in __kernel_vsyscall ()
>> #1  0x008c3015 in pthread_cond_wait@@GLIBC_2.3.2 () at
>> ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:122
>> #2  0x004ed9dd in __pthread_cond_wait (cond=0x9bd6e38,
>> mutex=0x9bd6e08) at forward.c:139
>> #3  0x012f86a9 in
>> decaf::internal::util::concurrent::ConditionImpl::wait
>> (condition=0x9bd6e38) at
>> decaf/internal/util/concurrent/unix/ConditionImpl.cpp:94
>> #4  0x01369353 in decaf::util::concurrent::Mutex::wait
>> (this=0x9bd6d6c) at decaf/util/concurrent/Mutex.cpp:95
>> #5  0x010949c5 in activemq::threads::CompositeTaskRunner::run
>> (this=0x9bd6d48) at activemq/threads/CompositeTaskRunner.cpp:118
>> #6  0x0132bcf1 in decaf::lang::ThreadProperties::runCallback
>> (properties=0x9bd6e90) at decaf/lang/Thread.cpp:135
>> #7  0x0132a847 in threadWorker (arg=0x9bd6e90) at
>> decaf/lang/Thread.cpp:188
>> #8  0x008be96e in start_thread (arg=0xb7739b70) at pthread_create.c:300
>> #9  0x004e0a4e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
>>
>> Thread 3:
>> #0  0x0079b422 in __kernel_vsyscall ()
>> #1  0x008c5af9 in __lll_lock_wait () at
>> ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/lowlevellock.S:142
>> #2  0x008c113b in _L_lock_748 () from /lib/tls/i686/cmov/libpthread.so.0
>> #3  0x008c0f61 in __pthread_mutex_lock (mutex=0x9be12d8) at
>> pthread_mutex_lock.c:61
>> #4  0x004edba6 in pthread_mutex_lock (mutex=0x9be12d8) at forward.c:182
>> #5  0x012f8aa1 in decaf::internal::util::concurrent::MutexImpl::lock
>> (handle=0x9be12d8) at
>> decaf/internal/util/concurrent/unix/MutexImpl.cpp:71
>> #6  0x01369412 in decaf::util::concurrent::Mutex::lock
>> (this=0x9be11ec) at decaf/util/concurrent/Mutex.cpp:75
>> #7  0x0105d770 in
>>
>> decaf::util::StlQueue<decaf::lang::Pointer<activemq::commands::MessageDispatch,
>> decaf::util::concurrent::atomic::AtomicRefCounter> >::lock
>> (this=0x9be11d8)
>>     at ./decaf/util/StlQueue.h:253
>> #8  activemq::core::MessageDispatchChannel::lock (this=0x9be11d8) at
>> activemq/core/MessageDispatchChannel.h:153
>> #9  0x01368ab5 in decaf::util::concurrent::Lock::lock
>> (this=0xb6f37fe4) at decaf/util/concurrent/Lock.cpp:54
>> #10 0x01368c08 in Lock (this=0xfffffe00, object=0x9be12d8,
>> intiallyLocked=true) at decaf/util/concurrent/Lock.cpp:32
>> #11 0x01026102 in
>> activemq::core::ActiveMQConsumer::clearMessagesInProgress
>> (this=0x9be11a0) at activemq/core/ActiveMQConsumer.cpp:1112
>> #12 0x0104715c in
>> activemq::core::ActiveMQSession::clearMessagesInProgress
>> (this=0x9be0b90) at activemq/core/ActiveMQSession.cpp:239
>> #13 0x01010543 in
>> activemq::core::ActiveMQConnection::transportInterrupted
>> (this=0x9bd7210) at activemq/core/ActiveMQConnection.cpp:704
>> #14 0x0109bb34 in
>> activemq::transport::TransportFilter::transportInterrupted
>> (this=0x9bd71c0) at activemq/transport/TransportFilter.cpp:67
>> #15 0x010b07ae in
>> activemq::transport::failover::FailoverTransport::handleTransportFailure
>> (this=0x9bd6a38, error=...) at
>> activemq/transport/failover/FailoverTransport.cpp:476
>> #16 0x010bc06c in
>> activemq::transport::failover::FailoverTransportListener::onException
>> (this=0x9bd6878, ex=...) at
>> activemq/transport/failover/FailoverTransportListener.cpp:97
>> #17 0x0109bc0b in activemq::transport::TransportFilter::fire
>> (this=0x9bd8ec8, ex=...) at activemq/transport/TransportFilter.cpp:49
>> #18 0x0109bc64 in activemq::transport::TransportFilter::onException
>> (this=0x9bd8ec8, ex=...) at activemq/transport/TransportFilter.cpp:41
>> #19 0x0109bc0b in activemq::transport::TransportFilter::fire
>> (this=0x9bd8938, ex=...) at activemq/transport/TransportFilter.cpp:49
>> #20 0x0109bc64 in activemq::transport::TransportFilter::onException
>> (this=0x9bd8938, ex=...) at activemq/transport/TransportFilter.cpp:41
>> #21 0x01099b13 in activemq::transport::IOTransport::fire
>> (this=0x9bd88e8, ex=...) at activemq/transport/IOTransport.cpp:73
>> #22 0x0109a3bf in activemq::transport::IOTransport::run
>> (this=0x9bd88e8) at activemq/transport/IOTransport.cpp:246
>> #23 0x0132bcf1 in decaf::lang::ThreadProperties::runCallback
>> (properties=0x9bd8fe8) at decaf/lang/Thread.cpp:135
>> #24 0x0132a847 in threadWorker (arg=0x9bd8fe8) at
>> decaf/lang/Thread.cpp:188
>> #25 0x008be96e in start_thread (arg=0xb6f38b70) at pthread_create.c:300
>> #26 0x004e0a4e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
>>
>> Thread 4:
>> #0  0x0079b422 in __kernel_vsyscall ()
>> #1  0x008c5af9 in __lll_lock_wait () at
>> ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/lowlevellock.S:142
>> #2  0x008c113b in _L_lock_748 () from /lib/tls/i686/cmov/libpthread.so.0
>> #3  0x008c0f61 in __pthread_mutex_lock (mutex=0x9be12d8) at
>> pthread_mutex_lock.c:61
>> #4  0x004edba6 in pthread_mutex_lock (mutex=0x9be12d8) at forward.c:182
>> #5  0x012f8aa1 in decaf::internal::util::concurrent::MutexImpl::lock
>> (handle=0x9be12d8) at
>> decaf/internal/util/concurrent/unix/MutexImpl.cpp:71
>> #6  0x01369412 in decaf::util::concurrent::Mutex::lock
>> (this=0x9be11ec) at decaf/util/concurrent/Mutex.cpp:75
>> #7  0x01036830 in
>>
>> decaf::util::StlQueue<decaf::lang::Pointer<activemq::commands::MessageDispatch,
>> decaf::util::concurrent::atomic::AtomicRefCounter> >::lock
>> (this=0x9be11e0)
>>     at ./decaf/util/StlQueue.h:253
>> #8  0x01368ab5 in decaf::util::concurrent::Lock::lock
>> (this=0xb6737064) at decaf/util/concurrent/Lock.cpp:54
>> #9  0x01368c08 in Lock (this=0xfffffe00, object=0x9be12d8,
>> intiallyLocked=true) at decaf/util/concurrent/Lock.cpp:32
>> #10 0x0105c507 in activemq::core::MessageDispatchChannel::clear
>> (this=0x9be11d8) at activemq/core/MessageDispatchChannel.cpp:143
>> #11 0x0102ec37 in activemq::core::ActiveMQConsumer::doClose
>> (this=0x9be11a0) at activemq/core/ActiveMQConsumer.cpp:335
>> #12 0x0102fb00 in activemq::core::ActiveMQConsumer::close
>> (this=0x9be11a0) at activemq/core/ActiveMQConsumer.cpp:309
>> #13 0x01030390 in ~ActiveMQConsumer (this=0x9be11a0, __in_chrg=<value
>> optimized out>) at activemq/core/ActiveMQConsumer.cpp:261
>> #14 0x0804c276 in Consumer::cleanup (this=0x9be0570) at main.cpp:469
>> #15 0x0804bcdd in Consumer::run (this=0x9be0570) at main.cpp:394
>> #16 0x0132bcf1 in decaf::lang::ThreadProperties::runCallback
>> (properties=0x9be05b0) at decaf/lang/Thread.cpp:135
>> #17 0x0132a847 in threadWorker (arg=0x9be05b0) at
>> decaf/lang/Thread.cpp:188
>> #18 0x008be96e in start_thread (arg=0xb6737b70) at pthread_create.c:300
>> #19 0x004e0a4e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
>>
>> Thread 5:
>> #0  0x0079b422 in __kernel_vsyscall ()
>> #1  0x008c5af9 in __lll_lock_wait () at
>> ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/lowlevellock.S:142
>> #2  0x008c113b in _L_lock_748 () from /lib/tls/i686/cmov/libpthread.so.0
>> #3  0x008c0f61 in __pthread_mutex_lock (mutex=0x9bd65e0) at
>> pthread_mutex_lock.c:61
>> #4  0x004edba6 in pthread_mutex_lock (mutex=0x9bd65e0) at forward.c:182
>> #5  0x012f8aa1 in decaf::internal::util::concurrent::MutexImpl::lock
>> (handle=0x9bd65e0) at
>> decaf/internal/util/concurrent/unix/MutexImpl.cpp:71
>> #6  0x01369412 in decaf::util::concurrent::Mutex::lock
>> (this=0x9bd6a88) at decaf/util/concurrent/Mutex.cpp:75
>> #7  0x01368ab5 in decaf::util::concurrent::Lock::lock
>> (this=0xb5f35ea0) at decaf/util/concurrent/Lock.cpp:54
>> #8  0x01368c08 in Lock (this=0xfffffe00, object=0x9bd65e0,
>> intiallyLocked=true) at decaf/util/concurrent/Lock.cpp:32
>> #9  0x010b38fd in
>> activemq::transport::failover::FailoverTransport::oneway
>> (this=0x9bd6a38, command=...) at
>> activemq/transport/failover/FailoverTransport.cpp:186
>> #10 0x0109ff9f in
>> activemq::transport::correlator::ResponseCorrelator::oneway
>> (this=0x9bd71c0, command=...) at
>> activemq/transport/correlator/ResponseCorrelator.cpp:82
>> #11 0x010093be in activemq::core::ActiveMQConnection::oneway
>> (this=0x9bd7210, command=...) at
>> activemq/core/ActiveMQConnection.cpp:741
>> #12 0x01048a4f in activemq::core::ActiveMQSession::oneway
>> (this=0x9be0b90, command=...) at activemq/core/ActiveMQSession.cpp:903
>> #13 0x01030df4 in
>> activemq::core::ActiveMQConsumer::afterMessageIsConsumed
>> (this=0x9be11a0, message=..., messageExpired=false) at
>> activemq/core/ActiveMQConsumer.cpp:642
>> #14 0x01031743 in activemq::core::ActiveMQConsumer::dispatch
>> (this=0x9be11a0, dispatch=...) at
>> activemq/core/ActiveMQConsumer.cpp:1021
>> #15 0x010555c3 in activemq::core::ActiveMQSessionExecutor::dispatch
>> (this=0x9be0dc8, dispatch=...) at
>> activemq/core/ActiveMQSessionExecutor.cpp:129
>> #16 0x01055993 in activemq::core::ActiveMQSessionExecutor::iterate
>> (this=0x9be0dc8) at activemq/core/ActiveMQSessionExecutor.cpp:166
>> #17 0x010987f3 in activemq::threads::DedicatedTaskRunner::run
>> (this=0x9be1480) at activemq/threads/DedicatedTaskRunner.cpp:111
>> #18 0x0132bcf1 in decaf::lang::ThreadProperties::runCallback
>> (properties=0x9be0ad8) at decaf/lang/Thread.cpp:135
>> #19 0x0132a847 in threadWorker (arg=0x9be0ad8) at
>> decaf/lang/Thread.cpp:188
>> #20 0x008be96e in start_thread (arg=0xb5f36b70) at pthread_create.c:300
>> #21 0x004e0a4e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
>>
>> 2011/3/1 Oscar Pernas <oscar@pernas.es>
>> >
>> > Hi,
>> >
>> > I ran into this bug before. If I am shutting down and starting the
>> broker so
>> > many times, connection are not reestablished and the consumer gets
>> frozen.
>> > If you try to close the consumer that is frozen, the closing stucks your
>> > thread too? In my case, this problem only happens when I'm debugging the
>> > application (without breaks but with visual studio debug).
>> > I've partially resolved it manually, if I dont received anything over a
>> > topic in a time, I try to close the consumer and reconnect it again.
>> >
>> > regards
>> >
>> > --
>> > Óscar Pernas Plaza.
>>
>
>
>
> --
> Óscar Pernas Plaza.
>



-- 
Óscar Pernas Plaza.

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message