[
https://issues.apache.org/jira/browse/AMQCPP-388?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13234373#comment-13234373
]
Helen Huang commented on AMQCPP-388:
------------------------------------
Hi Timothy,
Thanks for the help on disabling the inactivity monitor. Now the URI I use is
"tcp://127.0.0.1:61616?connection.sendTimeout=2000&transport.useInactivityMonitor=false"
However, we found another crash when we restarted the broker. The call stack of
the crashing thread:
activemq-cppud.dll!activemq::core::ActiveMQSession::dispose() Line 357
+ 0x9 bytes C++
activemq-cppud.dll!activemq::core::ActiveMQConnection::cleanup() Line
466 + 0x8 bytes C++
activemq-cppud.dll!activemq::core::ActiveMQConnection::onException(const
decaf::lang::Exception & ex={...}) Line 783 C++
> activemq-cppud.dll!activemq::transport::TransportFilter::fire(const
> decaf::lang::Exception & ex={...}) Line 54 + 0x17 bytes C++
activemq-cppud.dll!activemq::transport::TransportFilter::onException(const
decaf::lang::Exception & ex={...}) Line 47 C++
activemq-cppud.dll!activemq::transport::TransportFilter::fire(const
decaf::lang::Exception & ex={...}) Line 54 + 0x17 bytes C++
activemq-cppud.dll!activemq::transport::TransportFilter::onException(const
decaf::lang::Exception & ex={...}) Line 47 C++
activemq-cppud.dll!activemq::transport::TransportFilter::fire(const
decaf::lang::Exception & ex={...}) Line 54 + 0x17 bytes C++
activemq-cppud.dll!activemq::transport::TransportFilter::onException(const
decaf::lang::Exception & ex={...}) Line 47 C++
activemq-cppud.dll!activemq::transport::IOTransport::fire(decaf::lang::Exception
& ex={...}) Line 72 + 0x17 bytes C++
activemq-cppud.dll!activemq::transport::IOTransport::run() Line 245
C++
activemq-cppud.dll!decaf::lang::ThreadProperties::runCallback(decaf::lang::ThreadProperties
* properties=0x01300870) Line 137 + 0x13 bytes C++
activemq-cppud.dll!`anonymous namespace'::threadWorker(void *
arg=0x01300870) Line 210 + 0x9 bytes C++
msvcr80d.dll!_callthreadstartex() Line 348 + 0xf bytes C
msvcr80d.dll!_threadstartex(void * ptd=0x01301318) Line 331 C
> AprPool::getAprPool() returns NULL, causing access violation and application
> crash
> ----------------------------------------------------------------------------------
>
> Key: AMQCPP-388
> URL: https://issues.apache.org/jira/browse/AMQCPP-388
> Project: ActiveMQ C++ Client
> Issue Type: Bug
> Components: Decaf
> Affects Versions: 3.2.3
> Environment: Windows xp service pack 3, ActiveMQ broker 5.3.1, apr
> 1.4.2, apr-util 1.3.9, apr iconv 1.2.1
> Reporter: Helen Huang
> Assignee: Timothy Bish
> Priority: Critical
> Fix For: 3.2.3
>
> Attachments: BrokerMonitor.zip
>
>
> Our application that uses activemq c++ client lib crashed with the following
> dump:
> ----------------------------------------------------------------------------------------------------------------------
> Thread 87 - System ID 3780
> Function Arg 1 Arg 2 Arg 3 Source
> libapr_1!apr_pvsprintf+8 00000000 0642a188 180eeb94
> activemq_cppu!decaf::lang::Exception::buildMessage+71 0642a188
> 180eeb74 180eee2c
> activemq_cppu!decaf::lang::exceptions::RuntimeException::RuntimeException+4d
> 180efeec 0642a160 00000097
> activemq_cppu!decaf::lang::ThreadProperties::runCallback+125 180eee2c
> 180efee0 00000001
> msvcr80!CatchIt+5c 00000000 00000000 00000000
> LIBAPR_1!APR_PVSPRINTF+8In scotapp.dmp the assembly instruction at
> libapr_1!apr_pvsprintf+8 in C:\scot\dll\libapr-1.dll has caused an access
> violation exception (0xC0000005) when trying to read from memory location
> 0x0000002c on thread 87
> --------------------------------------------------------------------------------------------------------------------
> On the call stack, we saw that following function from class
> decaf::lang::Exception was called:
> void Exception::buildMessage( const char* format, va_list& vargs ) {
> // Allocate buffer with a guess of it's size
> AprPool pool;
> // Allocate a buffer of the specified size.
> char* buffer = apr_pvsprintf( pool.getAprPool(), format, vargs );
> // Guessed size was enough. Assign the string.
> message.assign( buffer, strlen( buffer ) );
> }
> The first parameter passed into apr_pvsprintf was NULL, causing the crash.
> Could you please take a look and see if there is any bug in the activemqcpp
> code that could cause the problem. Thanks!
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira