Author: aconway
Date: Tue Jan 19 16:13:06 2010
New Revision: 900829

URL: http://svn.apache.org/viewvc?rev=900829&view=rev
Log:
Fix intermittent test error: cluster_test.cpp(1108): error in "testRelease": 
check browse(c3, "q", 5) == expected failed [ != m_1 m_2 m_3 m_4 m_5 ]

This was a test issue, not a broker issue. What seems to have been happening:
 - start broker b0 & send messages.
 - fork broker b1
 - line 1103 (lqSub.release(...)); executes against b0 _before_ b1 connects for 
update         lqSub.release(lqSub.getUnaccepted());
 - line 1108 browse() executes during the update.
 - update takes > 0.5 secs for some reason, browse times out.

The fix is a synchronous flush in browse() which will wait for the broker to be 
responsive before trying to get the messages.

Modified:
    qpid/trunk/qpid/cpp/src/tests/cluster_test.cpp

Modified: qpid/trunk/qpid/cpp/src/tests/cluster_test.cpp
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/tests/cluster_test.cpp?rev=900829&r1=900828&r2=900829&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/tests/cluster_test.cpp (original)
+++ qpid/trunk/qpid/cpp/src/tests/cluster_test.cpp Tue Jan 19 16:13:06 2010
@@ -157,6 +157,7 @@
     );
     LocalQueue lq;
     c.subs.subscribe(lq, q, browseSettings);
+    c.session.messageFlush(q);
     vector<string> result;
     for (int i = 0; i < n; ++i) {
         Message m;



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:[email protected]

Reply via email to