thanks Tim!
On Oct 25, 2007, at 9:21 PM, Timothy Bish wrote:
Hey Rob.
The test is pretty simple. I've attached some code below.
Basically we create a durable consumer send some messages and wait
till we get them all. Then we destroy the consumer and send some
more messages then create another durable consumer with the same id
and wait to get the messages we sent while their was no consumer.
std::string subName = Guid().createGUID();
// Create CMS Object for Comms
cms::Session* session = testSupport.getSession();
cms::Topic* topic = session->createTopic
(Guid::createGUIDString());
cms::MessageConsumer* consumer =
session->createDurableConsumer( topic, subName, "" );
consumer->setMessageListener( &testSupport );
cms::MessageProducer* producer =
session->createProducer( topic );
unsigned int sent;
// Send some text messages
sent = testSupport.produceTextMessages( *producer, 3 );
// Wait for all messages
testSupport.waitForMessages( sent );
unsigned int numReceived = testSupport.getNumReceived();
if( IntegrationCommon::debug ) {
printf("received: %d\n", numReceived );
}
CPPUNIT_ASSERT_EQUAL( sent, numReceived );
// Nuke the consumer
delete consumer;
// Send some text messages
sent += testSupport.produceTextMessages( *producer, 3 );
consumer = session->createDurableConsumer( topic, subName,
"" );
consumer->setMessageListener( &testSupport );
// Send some text messages
sent += testSupport.produceTextMessages( *producer, 3 );
// Wait for all remaining messages
testSupport.waitForMessages( sent );
numReceived = testSupport.getNumReceived();
if( IntegrationCommon::debug ) {
printf("received: %d\n", numReceived );
}
CPPUNIT_ASSERT_EQUAL( sent, numReceived );
if( IntegrationCommon::debug ) {
printf("Shutting Down\n" );
}
delete producer;
delete consumer;
delete topic;
// Remove the subscription
session->unsubscribe( subName );
Rob Davies wrote:
Hi Tim,
what does your integration test do ? I would like to try reproduce
this in a junit test case
cheers,
Rob
http://rajdavies.blogspot.com/
On Oct 25, 2007, at 8:07 PM, Timothy Bish wrote:
Hiram
I'm testing out ActiveMQ-CPP against the 50 RC2 binary and when I
run
our Durable Consumer Integration test I keep getting the error below
returned from the broker. I'm not sure what this means, any clues.
This test works fine on a 4.1.1 broker.
1) test:
integration::connector::openwire::OpenwireDurableTest::test (F)
line:
156 ../../../src/test-integration/integration/connector/openwire/
OpenwireDurableTest.cpp
assertion failed
- Expression: false
- *** BEGIN SERVER-SIDE STACK TRACE ***
Message: java.io.IOException: Failed to read to journal for:
offset =
2374, file = 1, size = -1, type = 0. Reason: java.io.IOException:
Could
not locate data file data--1
Cause: 0x31
Exception Class java.lang.RuntimeException
*** END SERVER-SIDE STACK TRACE ***
FILE: ../../../src/main/activemq/connector/openwire/
OpenWireConnector.cpp, LINE: 1358
FILE: ../../../src/main/activemq/connector/openwire/
OpenWireConnector.cpp, LINE: 1372
FILE: ../../../src/main/activemq/connector/openwire/
OpenWireConnector.cpp, LINE: 847
FILE: ../../../src/main/activemq/core/
ActiveMQSession.cpp, LINE:
675
FILE: ../../../src/main/activemq/core/ActiveMQProducer.cpp,
LINE: 194
FILE: ../../../src/main/activemq/core/ActiveMQProducer.cpp,
LINE: 149
FILE: ../../../src/main/activemq/core/ActiveMQProducer.cpp,
LINE: 108
FILE: ../../../src/test-integration/integration/
TestSupport.cpp,
LINE: 150
On Thu, 2007-10-25 at 12:43 -0400, Hiram Chirino wrote:
Howdy folks.
First I want to thank all the folks that helped test out the first
release candidate. Several bugs/issues were identified and
resolved.
Now that things seem to have quieted down a bit, I cut a new
release
candidate. This one should be much more stable.
You can get the binary distributions here:
http://people.apache.org/~chirino/apache-activemq-5.0.0-RC2/
maven2/org/apache/activemq/apache-activemq/5.0.0/
maven 2 repo: http://people.apache.org/~chirino/apache-
activemq-5.0.0-RC2/maven2
maven 1 repo: http://people.apache.org/~chirino/apache-
activemq-5.0.0-RC2/maven1
Please check out this build and let me know if you see anything
out of place.
--
Regards,
Hiram
Blog: http://hiramchirino.com