[ 
https://issues.apache.org/jira/browse/AMQCPP-460?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13576981#comment-13576981
 ] 

Scott Weaver commented on AMQCPP-460:
-------------------------------------

Have it in the debugger. I was wrong. The thread we are joining has not exited 
and is parked.

Main thread performing join:
        ntdll.dll!7c90e514()    
        [Frames below may be incorrect and/or missing, no symbols loaded for 
ntdll.dll] 
        ntdll.dll!7c90df5a()    
        kernel32.dll!7c8025db()         
        kernel32.dll!7c802542()         
        
activemq-cppud.dll!decaf::internal::util::concurrent::PlatformThread::interruptibleWaitOnCondition(void
 * condition=0x00001f18, _RTL_CRITICAL_SECTION * mutex=0x05176728, 
decaf::internal::util::concurrent::CompletionCondition & complete={...})  Line 
282    C++
        
activemq-cppud.dll!decaf::internal::util::concurrent::Threading::join(decaf::internal::util::concurrent::ThreadHandle
 * thread=0x05176240, __int64 mills=0x0000000000000000, int nanos=0x00000000)  
Line 1167 + 0x17 bytes      C++
>       activemq-cppud.dll!decaf::lang::Thread::join()  Line 166 + 0x15 bytes   
> C++
        CMStressUD.exe!CmsAdapter::Receiver::Close()  Line 379 + 0x17 bytes     
C++
        CMStressUD.exe!CMSMessageHandlerCOMTest::TestSenderAndReceiver::close() 
 Line 270       C++
        CMStressUD.exe!wmain(int argc=0x00000011, wchar_t * * argv=0x010b56d0)  
Line 312        C++
        CMStressUD.exe!__tmainCRTStartup()  Line 583 + 0x19 bytes       C
        CMStressUD.exe!wmainCRTStartup()  Line 403      C

The thread we are attempting to join that is "parked":
        ntdll.dll!7c90e514()    
        [Frames below may be incorrect and/or missing, no symbols loaded for 
ntdll.dll] 
        ntdll.dll!7c90df5a()    
        kernel32.dll!7c8025db()         
        kernel32.dll!7c802542()         
>       
> activemq-cppud.dll!decaf::internal::util::concurrent::PlatformThread::interruptibleWaitOnCondition(void
>  * condition=0x00001894, _RTL_CRITICAL_SECTION * mutex=0x05176728, 
> decaf::internal::util::concurrent::CompletionCondition & complete={...})  
> Line 282    C++
        
activemq-cppud.dll!decaf::internal::util::concurrent::Threading::park(decaf::lang::Thread
 * thread=0x05175e80, __int64 mills=0x0000000000000000, int nanos=0x00000000)  
Line 1401 + 0x17 bytes  C++
        
activemq-cppud.dll!decaf::internal::util::concurrent::Threading::park(decaf::lang::Thread
 * thread=0x05175e80)  Line 1337 + 0xf bytes   C++
        activemq-cppud.dll!decaf::util::concurrent::locks::LockSupport::park()  
Line 54 + 0x11 bytes    C++
        
activemq-cppud.dll!decaf::util::concurrent::locks::SynchronizerState::parkAndCheckInterrupt()
  Line 674 C++
        
activemq-cppud.dll!decaf::util::concurrent::locks::SynchronizerState::acquireQueued(`anonymous-namespace'::Node
 * node=0x1d79fea8, int arg=0x00000001)  Line 703 + 0x23 bytes   C++
        
activemq-cppud.dll!decaf::util::concurrent::locks::AbstractQueuedSynchronizer::acquire(int
 arg=0x00000001)  Line 1557 + 0x39 bytes      C++
        activemq-cppud.dll!decaf::util::concurrent::locks::NonFairSync::lock()  
Line 153        C++
        
activemq-cppud.dll!decaf::util::concurrent::locks::ReentrantLock::lock()  Line 
236      C++
        activemq-cppud.dll!decaf::util::concurrent::ExecutorKernel::shutdown()  
Line 825        C++
        
activemq-cppud.dll!decaf::util::concurrent::ThreadPoolExecutor::shutdown()  
Line 1521   C++
        
activemq-cppud.dll!activemq::core::ConnectionConfig::~ConnectionConfig()  Line 
270      C++
        activemq-cppud.dll!activemq::core::ConnectionConfig::`scalar deleting 
destructor'()  + 0xf bytes        C++
        
activemq-cppud.dll!activemq::core::ActiveMQConnection::~ActiveMQConnection()  
Line 470 + 0x1f bytes     C++
        activemq-cppud.dll!activemq::core::ActiveMQConnection::`vbase 
destructor'()  + 0xf bytes        C++
        activemq-cppud.dll!activemq::core::ActiveMQConnection::`vector deleting 
destructor'()  + 0x4d bytes     C++
        
activemq-cppud.dll!activemq::cmsutil::ResourceLifecycleManager::destroy()  Line 
137 + 0x20 bytes        C++
        activemq-cppud.dll!activemq::cmsutil::CmsAccessor::destroy()  Line 130  
C++
        activemq-cppud.dll!activemq::cmsutil::CmsDestinationAccessor::destroy() 
 Line 56        C++
        activemq-cppud.dll!activemq::cmsutil::CmsTemplate::destroy()  Line 210  
C++
        
activemq-cppud.dll!activemq::cmsutil::CmsTemplate::doReceive(cms::MessageConsumer
 * consumer=0x05161ee8)  Line 622 + 0x14 bytes C++
        
activemq-cppud.dll!activemq::cmsutil::CmsTemplate::ReceiveExecutor::doInCms(cms::Session
 * session=0x1d403188)  Line 637 + 0xf bytes    C++
        
activemq-cppud.dll!activemq::cmsutil::CmsTemplate::execute(activemq::cmsutil::SessionCallback
 * action=0x0a0ffad8)  Line 439    C++
        
activemq-cppud.dll!activemq::cmsutil::CmsTemplate::receiveSelected(const 
std::basic_string<char,std::char_traits<char>,std::allocator<char> > & 
selector="terminalNumber='30'")  Line 710       C++
        
CMStressUD.exe!CmsAdapter::Receiver::ReceiveMessage(std::basic_string<char,std::char_traits<char>,std::allocator<char>
 > & message="", ErrorCode & errorCode=CMS_SUCCESS, 
std::basic_string<char,std::char_traits<char>,std::allocator<char> > & 
selector="terminalNumber='30'", bool retryOnError=false)  Line 155 + 0x1c bytes 
       C++
        CMStressUD.exe!CmsAdapter::Receiver::run()  Line 268    C++
        activemq-cppud.dll!decaf::lang::Thread::run()  Line 143 C++
        activemq-cppud.dll!`anonymous namespace'::runCallback(void * 
arg=0x05176240)  Line 262 + 0x11 bytes     C++
        activemq-cppud.dll!`anonymous namespace'::threadEntryMethod(void * 
arg=0x05176240)  Line 250 + 0x15 bytes       C++
        msvcr90d.dll!_callthreadstartex()  Line 348 + 0xf bytes C
        msvcr90d.dll!_threadstartex(void * ptd=0x0113efa0)  Line 331    C
        kernel32.dll!7c80b729()         


                
> Access Violation
> ----------------
>
>                 Key: AMQCPP-460
>                 URL: https://issues.apache.org/jira/browse/AMQCPP-460
>             Project: ActiveMQ C++ Client
>          Issue Type: Bug
>          Components: CMS Impl
>    Affects Versions: 3.6.0
>         Environment: Windows XP VS2008
>            Reporter: Scott Weaver
>            Assignee: Timothy Bish
>
> Access violation using 3.6.x snapshot from 2/8.
> >     activemq-cppd.dll!activemq::transport::TransportFilter::stop()  Line 
> > 102 + 0x11 bytes   C++
>       activemq-cppd.dll!activemq::transport::tcp::TcpTransport::stop()  Line 
> 151      C++
>       activemq-cppd.dll!activemq::transport::TransportFilter::stop()  Line 
> 103        C++
>       
> activemq-cppd.dll!activemq::transport::inactivity::InactivityMonitor::stop()  
> Line 289  C++
>       activemq-cppd.dll!activemq::transport::TransportFilter::stop()  Line 
> 103        C++
>       activemq-cppd.dll!activemq::transport::TransportFilter::stop()  Line 
> 103        C++
>       activemq-cppd.dll!activemq::core::OnExceptionRunnable::run()  Line 371 
> + 0x1e bytes     C++
>       
> activemq-cppd.dll!decaf::util::concurrent::ExecutorKernel::runWorker(decaf::util::concurrent::ExecutorKernel::Worker
>  * w=0x0e855350)  Line 726 + 0xd bytes      C++
>       
> activemq-cppd.dll!decaf::util::concurrent::ExecutorKernel::Worker::run()  
> Line 184      C++
>       activemq-cppd.dll!decaf::lang::Thread::run()  Line 143  C++
>       activemq-cppd.dll!`anonymous namespace'::runCallback(void * 
> arg=0x143358a0)  Line 262 + 0x11 bytes      C++
>       activemq-cppd.dll!`anonymous namespace'::threadEntryMethod(void * 
> arg=0x143358a0)  Line 250 + 0x15 bytes        C++
>       msvcr90d.dll!_callthreadstartex()  Line 348 + 0xf bytes C
>       msvcr90d.dll!_threadstartex(void * ptd=0x0e6f07f0)  Line 331    C
>       kernel32.dll!7c80b729()         
>       [Frames below may be incorrect and/or missing, no symbols loaded for 
> kernel32.dll]      

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to