activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From <barry.barn...@wellsfargo.com>
Subject ActiveMQ - CPP SSL question
Date Thu, 09 Apr 2015 16:44:45 GMT
Thread 17 down below, as well as thread 37 immediately below, both show startHandshake() in
the stack, but only thread 37 has the calling application in the same thread. I don't see
anything in the startHandshake() method that spawns off a thread, and it looks like return
from this method is only possible if an exception is thrown (which we don't see) or if handshakeCompleted
is set to true. startHandshake() is only invoked or re-invoked if handshakeCompleted is false.
What it adds up to is that I still don't understand where the other thread gets spawned off,
or how it gets spawned off when the handshake hasn't been completed.

Thread 37 (Thread 0x960e720 (LWP 32567)):
#0  0x005c7430 in __kernel_vsyscall ()
#1  0x093dc3ac in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xf72bfaaa in decaf::internal::util::concurrent::PlatformThread::waitOnCondition(pthread_cond_t*,
pthread_mutex_t*) () from /tvapps/PSL/psl/activemq/lib/libactivemq-cpp.so.17
#3  0xf72b9d1f in (anonymous namespace)::doMonitorEnter(decaf::internal::util::concurrent::MonitorHandle*,
decaf::internal::util::concurrent::ThreadHandle*) ()
   from /tvapps/PSL/psl/activemq/lib/libactivemq-cpp.so.17
#4  0xf72bc45c in decaf::internal::util::concurrent::Threading::enterMonitor(decaf::internal::util::concurrent::MonitorHandle*)
() from /tvapps/PSL/psl/activemq/lib/libactivemq-cpp.so.17
#5  0xf7348e1f in decaf::util::concurrent::Mutex::lock() () from /tvapps/PSL/psl/activemq/lib/libactivemq-cpp.so.17
#6  0xf734885c in decaf::util::concurrent::Lock::lock() () from /tvapps/PSL/psl/activemq/lib/libactivemq-cpp.so.17
#7  0xf73485f5 in decaf::util::concurrent::Lock::Lock(decaf::util::concurrent::Synchronizable*,
bool) () from /tvapps/PSL/psl/activemq/lib/libactivemq-cpp.so.17
#8  0xf7270735 in decaf::internal::net::ssl::openssl::OpenSSLSocket::startHandshake() () from
/tvapps/PSL/psl/activemq/lib/libactivemq-cpp.so.17
#9  0xf72715e3 in decaf::internal::net::ssl::openssl::OpenSSLSocket::write(unsigned char const*,
int, int, int) () from /tvapps/PSL/psl/activemq/lib/libactivemq-cpp.so.17
#10 0xf7274974 in decaf::internal::net::ssl::openssl::OpenSSLSocketOutputStream::doWriteArrayBounded(unsigned
char const*, int, int, int) () from /tvapps/PSL/psl/activemq/lib/libactivemq-cpp.so.17
#11 0xf72e287b in decaf::io::OutputStream::doWriteArray(unsigned char const*, int) () from
/tvapps/PSL/psl/activemq/lib/libactivemq-cpp.so.17
#12 0xf72e24b6 in decaf::io::OutputStream::write(unsigned char const*, int) () from /tvapps/PSL/psl/activemq/lib/libactivemq-cpp.so.17
#13 0xf72d4964 in decaf::io::BufferedOutputStream::emptyBuffer() () from /tvapps/PSL/psl/activemq/lib/libactivemq-cpp.so.17
#14 0xf72d4b13 in decaf::io::BufferedOutputStream::flush() () from /tvapps/PSL/psl/activemq/lib/libactivemq-cpp.so.17
#15 0xf72df72a in decaf::io::FilterOutputStream::flush() () from /tvapps/PSL/psl/activemq/lib/libactivemq-cpp.so.17
#16 0xf713a4d5 in activemq::transport::IOTransport::oneway(decaf::lang::Pointer<activemq::commands::Command,
decaf::util::concurrent::atomic::AtomicRefCounter>) ()
   from /tvapps/PSL/psl/activemq/lib/libactivemq-cpp.so.17
#17 0xf713d534 in activemq::transport::TransportFilter::oneway(decaf::lang::Pointer<activemq::commands::Command,
decaf::util::concurrent::atomic::AtomicRefCounter>) ()
   from /tvapps/PSL/psl/activemq/lib/libactivemq-cpp.so.17
#18 0xf719c3d1 in activemq::transport::inactivity::InactivityMonitor::oneway(decaf::lang::Pointer<activemq::commands::Command,
decaf::util::concurrent::atomic::AtomicRefCounter>) ()
   from /tvapps/PSL/psl/activemq/lib/libactivemq-cpp.so.17
#19 0xf71f689e in activemq::wireformat::openwire::OpenWireFormatNegotiator::afterNextIsStarted()
() from /tvapps/PSL/psl/activemq/lib/libactivemq-cpp.so.17
#20 0xf713c5cd in activemq::transport::TransportFilter::start() () from /tvapps/PSL/psl/activemq/lib/libactivemq-cpp.so.17
#21 0xf713c5bb in activemq::transport::TransportFilter::start() () from /tvapps/PSL/psl/activemq/lib/libactivemq-cpp.so.17
#22 0xf6f7a45c in activemq::core::ActiveMQConnectionFactory::doCreateConnection(decaf::net::URI
const&, std::basic_string<char, std::char_traits<char>, std::allocator<char>
> const&, std::basic_string<char, std::char_traits<char>, std::allocator<char>
> const&, std::basic_string<char, std::char_traits<char>, std::allocator<char>
> const&) () from /tvapps/PSL/psl/activemq/lib/libactivemq-cpp.so.17
#23 0xf6f7a122 in activemq::core::ActiveMQConnectionFactory::createConnection() () from /tvapps/PSL/psl/activemq/lib/libactivemq-cpp.so.17
#24 0x06e29365 in wf_psl::CWFActiveMQProducer::run() () from /tvapps/Server/svt/lib/libsvtcommon.so
#25 0x052fe7da in NSWFServer::CWFSessionManager::deregisterPSL(std::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&) () from /tvapps/Server/svt/lib/libserver.so
#26 0x052ff3cd in NSWFServer::CWFSessionManager::deleteSessionId(std::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, int) () from /tvapps/Server/svt/lib/libserver.so
#27 0x052ff512 in NSWFServer::CWFSessionManager::endSession(unsigned int) () from /tvapps/Server/svt/lib/libserver.so
#28 0x05300e0f in NSWFServer::CWFSessionEndHandler::handleMessage(CWFSharedPtr<CWFMessageBase_dto>)
() from /tvapps/Server/svt/lib/libserver.so
#29 0x052fd1ed in NSWFServer::CWFSessionManager::handleMessage(CWFSharedPtr<CWFMessageBase_dto>)
() from /tvapps/Server/svt/lib/libserver.so
#30 0x052f30ed in NSWFServer::CWFDispatcher::dispatchInThread(void*, void*) () from /tvapps/Server/svt/lib/libserver.so
#31 0x06e0527e in CWFThreadPoolWorker::threadedFunc() () from /tvapps/Server/svt/lib/libsvtcommon.so
#32 0x06e066d0 in CWFThreaded::run() () from /tvapps/Server/svt/lib/libsvtcommon.so
#33 0x06e06877 in CWFThreaded::_run_thread(void*) () from /tvapps/Server/svt/lib/libsvtcommon.so
#34 0x093d8b39 in start_thread () from /lib/libpthread.so.0
#35 0x08acbc2e in clone () from /lib/libc.so.6


Regards,

Barry




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