diff options
author | Alan Conway <aconway@apache.org> | 2010-01-19 16:13:06 +0000 |
---|---|---|
committer | Alan Conway <aconway@apache.org> | 2010-01-19 16:13:06 +0000 |
commit | 2d5ec7dce73cf2d0290fc6b68bc66f0135520ba0 (patch) | |
tree | 8a7f0c7499d5fb72dc647d372c7918b9f2c59d1b | |
parent | 29745628ade582e3ae244f2cbf1c58b92b163755 (diff) | |
download | qpid-python-2d5ec7dce73cf2d0290fc6b68bc66f0135520ba0.tar.gz |
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.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@900829 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r-- | qpid/cpp/src/tests/cluster_test.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/qpid/cpp/src/tests/cluster_test.cpp b/qpid/cpp/src/tests/cluster_test.cpp index 33f23aa5b3..bb1c014b99 100644 --- a/qpid/cpp/src/tests/cluster_test.cpp +++ b/qpid/cpp/src/tests/cluster_test.cpp @@ -157,6 +157,7 @@ vector<string> browse(Client& c, const string& q, int n) { ); LocalQueue lq; c.subs.subscribe(lq, q, browseSettings); + c.session.messageFlush(q); vector<string> result; for (int i = 0; i < n; ++i) { Message m; |