Hi there, Added to the Jira, here: https://issues.apache.org/activemq/browse/AMQCPP-290
Thanks again :) -Regards, MjK > -----Original Message----- > From: Mike J. Kitchin [mailto:mike.kitc...@tideworks.com] > Sent: Monday, March 01, 2010 12:37 PM > To: users@activemq.apache.org > Subject: Authentication error leads to pure virtual call/kaboom in CMS > 3.1.1 > > Hi there, > > We have a large, vertical C++ application with ActiveMQ connectivity > added about a year ago, steadily upgrading the CMS interface until > current (v3.1.1) and, beginning before 3.0.1, we noticed after > consecutive login failures -- within our app, it takes from 3-10 actual > retries -- we find a pure virtual function call somewhere in the AMQ > thread pool, triggering our built-in crashdump mechanism and shutting > things down. > > An exception that's at least cosmetically similar may be reproduced > with the SimpleProducer, as I've doctored it and attached to this email > (not sure if attachments make it to the list...), along with the thread > stacks/traces witnessed at the time. Start SimpleProducer and, after an > indeterminate number of retries -- in this example, it could take > several hundred -- the circumstance should arise. The test is performed > between two hosts, using AMQ broker v5.3 and CMS 3.1.1 and ought to > manifest in either debug/release build. > > SimpleProducer has been altered to: > =================================== > - Provide username/password (in our test case, the username "foo" is > incorrect) > - Connect to a remote v5.3 AMQ broker > - Loop the example indefinitely with a short delay between retries > until (in a debug build) a pure virtual assert should trip in the > standard library > > Our application is built unusually in the following ways: > ========================================================= > - AMQ CMS and APR are all reconfigured and built __stdcall, since our > main application is that way and name mangling won't otherwise match at > link time > - We don't have STL debug iterators enabled, so key AMQ CMS/APR headers > are prepended with (more or less): > > #ifdef _HAS_ITERATOR_DEBUGGING > #undef _HAS_ITERATOR_DEBUGGING > #endif > > #define _HAS_ITERATOR_DEBUGGING 0 > > ...This may seem like an odd circumstance, but we function in > enterprises where AMQ connectivity is only part of what our application > is responsible for and, occasionally (for example) brokers may be > misconfigured and remain so for notable periods before changes make > their way to all of the clients, during which time we must remain > operational in other regards. In practice, as I've said, our > application will experience the pure virtual call within a few minutes. > > Thank you for your time/assistance, in advance, and we otherwise very > much appreciate the functionality AMQ/CMS provides us. > > Please let me know if I may provide any additional information. Thanks. > > -Regards, > MjK > > - - - - - > > "Here lies Zeke, second-fastest draw in Cripple Creek." > - Epitaph (Cripple Creek, CO) > > Michael J. Kitchin (Senior Software Engineer) Tideworks Technology > http://www.tideworks.com >