Hi,
We use activemqcpp library from the version 3.8.2.
Sometimes there is a crash in activemq::core::ConnectionAudit::isDuplicate.
Could you please advise with this core - what may cause such crash, is it a
known issue?
Here is the call stack from one of the cores:
* 1 Thread 32129 0x760417ab in
decaf::lang::PointerComparator<activemq::commands::ActiveMQDestinatio
n, decaf::util::concurrent::atomic::AtomicRefCounter>::operator()
(this=0x874ce1c, left=..., right=...) at decaf/lang/Pointer.h:243
(gdb) bt
#0 0x760417ab in
decaf::lang::PointerComparator<activemq::commands::ActiveMQDestinatio
n, decaf::util::concurrent::atomic::AtomicRefCounter>::operator()
(this=0x874ce1c, left=..., right=...) at decaf/lang/Pointer.h:243
#1 0x76108cad in
std::_Rb_tree<decaf::lang::Pointer<activemq::commands::ActiveMQDestin
ation, decaf::util::concurrent::atomic::AtomicRefCounter>,
std::pair<decaf::lang::Pointer<activemq::commands::ActiveMQDestinatio
n, decaf::util::concurrent::atomic::AtomicRefCounter> const,
decaf::lang::Pointer<activemq::core::ActiveMQMessageAudit,
decaf::util::concurrent::atomic::AtomicRefCounter> >,
std::_Select1st<std::pair<decaf::lang::Pointer<activemq::commands::Ac
tiveMQDestination, decaf::util::concurrent::atomic::AtomicRefCounter>
const, decaf::lang::Pointer<activemq::core::ActiveMQMessageAudit,
decaf::util::concurrent::atomic::AtomicRefCounter> > >,
decaf::lang::PointerComparator<activemq::commands::ActiveMQDestinatio
n, decaf::util::concurrent::atomic::AtomicRefCounter>,
std::allocator<std::pair<decaf::lang::Pointer<activemq::commands::Act
iveMQDestination, decaf::util::concurrent::atomic::AtomicRefCounter>
const, decaf::lang::Pointer<activemq::core::ActiveMQMessageAudit,
decaf::util::concurrent::atomic::AtomicRefCounter> > > >::find
(this=0x874ce14, __k=...) at
/packages/gnu-3.2.3-20.linux30/include/c++/3.2.3/bits/stl_tree.h:669
#2 0x76100316 in
decaf::util::StlMap<decaf::lang::Pointer<activemq::commands::ActiveMQDestination,
decaf::util::concurrent::atomic::AtomicRefCounter>,
decaf::lang::Pointer<activemq::core::ActiveMQMessageAudit,
decaf::util::concurrent::atomic::AtomicRefCounter>,
decaf::lang::PointerComparator<activemq::commands::ActiveMQDestination,
decaf::util::concurrent::atomic::AtomicRefCounter> >::containsKey (this=0x874ce10, key=...)
at
/packages/gnu-3.2.3-20.linux30/include/c++/3.2.3/bits/stl_map.h:345
#3 0x760fb57a in activemq::core::ConnectionAudit::isDuplicate
(this=0x874cdf4, dispatcher=0xc0a7e94, message=...) at
decaf/util/StlMap.h:794
#4 0x7603605c in activemq::core::ActiveMQConnection::isDuplicate
(this=0x8a74408, dispatcher=0x32332d46, message=...) at
decaf/util/concurrent/atomic/AtomicRefCounter.h:46
#5 0x76141bb5 in
activemq::core::kernels::ActiveMQConsumerKernel::dispatch
(this=0xc0a7e88, dispatch=...) at
activemq/core/kernels/ActiveMQSessionKernel.h:330
#6 0x760e4b1b in activemq::core::ActiveMQSessionExecutor::dispatch
(this=0x32332d46, dispatch=...) at decaf/lang/Pointer.h:258
#7 0x760e4e92 in activemq::core::ActiveMQSessionExecutor::iterate
(this=0x5a5676a0) at activemq/core/ActiveMQSessionExecutor.cpp:181
#8 0x762659b6 in activemq::threads::DedicatedTaskRunner::run
(this=0x5a6935e0) at activemq/threads/DedicatedTaskRunner.cpp:141
#9 0x7646285e in decaf::lang::Thread::run (this=0x32332d46) at
decaf/lang/Thread.cpp:141
#10 0x76421c17 in (anonymous namespace)::runCallback (arg=0x5abb66e8)
at decaf/internal/util/concurrent/Threading.cpp:266
#11 0x76421b89 in (anonymous namespace)::threadEntryMethod
(arg=0x5abb66e8) at decaf/internal/util/concurrent/Threading.cpp:254
#12 0x757f145b in start_thread () from /lib/libpthread.so.0
#13 0x7566024e in clone () from /lib/libc.so.6
(gdb) t 10
[Switching to thread 10 (Thread 32093)]#0 0x756951b2 in
dl_iterate_phdr () from /lib/libc.so.6
(gdb) bt
#0 0x756951b2 in dl_iterate_phdr () from /lib/libc.so.6
#1 0x0849cd55 in _Unwind_Find_FDE ()
#2 0x0849a815 in ?? ()
#3 0x0849b0a8 in _Unwind_RaiseException ()
#4 0x75762309 in __cxa_throw () from /usr/lib/libstdc++.so.5
#5 0x760a6bb8 in activemq::core::ActiveMQMessageAudit::isDuplicate
(this=0xbbef390, msgId=...) at decaf/util/HashMap.h:971
#6 0x760faba1 in activemq::core::ConnectionAudit::isDuplicate
(this=0x874cdf4, dispatcher=0x4ff9473c, message=...) at
decaf/lang/Pointer.h:258
#7 0x7603605c in activemq::core::ActiveMQConnection::isDuplicate
(this=0x8a74408, dispatcher=0xb726488, message=...) at
decaf/util/concurrent/atomic/AtomicRefCounter.h:46
#8 0x76141bb5 in
activemq::core::kernels::ActiveMQConsumerKernel::dispatch
(this=0x4ff94730, dispatch=...) at
activemq/core/kernels/ActiveMQSessionKernel.h:330
#9 0x760e4b1b in activemq::core::ActiveMQSessionExecutor::dispatch
(this=0xb726488, dispatch=...) at decaf/lang/Pointer.h:258
#10 0x760e4e92 in activemq::core::ActiveMQSessionExecutor::iterate
(this=0xb25f658) at activemq/core/ActiveMQSessionExecutor.cpp:181
#11 0x762659b6 in activemq::threads::DedicatedTaskRunner::run
(this=0xc073290) at activemq/threads/DedicatedTaskRunner.cpp:141
#12 0x7646285e in decaf::lang::Thread::run (this=0xb726488) at
decaf/lang/Thread.cpp:141
#13 0x76421c17 in (anonymous namespace)::runCallback (arg=0xb6ab2c8)
at decaf/internal/util/concurrent/Threading.cpp:266
#14 0x76421b89 in (anonymous namespace)::threadEntryMethod
(arg=0xb6ab2c8) at decaf/internal/util/concurrent/Threading.cpp:254
#15 0x757f145b in start_thread () from /lib/libpthread.so.0
#16 0x7566024e in clone () from /lib/libc.so.6
Best regards,
Lyuba