You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by kp...@apache.org on 2012/05/04 17:40:13 UTC

svn commit: r1334037 [8/24] - in /qpid/branches/asyncstore: ./ bin/ cc/ cpp/ cpp/bindings/ cpp/bindings/qmf/ruby/ cpp/bindings/qmf/tests/ cpp/bindings/qpid/ cpp/bindings/qpid/dotnet/ cpp/bindings/qpid/python/ cpp/bindings/qpid/ruby/ cpp/bindings/qpid/r...

Modified: qpid/branches/asyncstore/cpp/src/qpid/sys/windows/AsynchIO.cpp
URL: http://svn.apache.org/viewvc/qpid/branches/asyncstore/cpp/src/qpid/sys/windows/AsynchIO.cpp?rev=1334037&r1=1334036&r2=1334037&view=diff
==============================================================================
--- qpid/branches/asyncstore/cpp/src/qpid/sys/windows/AsynchIO.cpp (original)
+++ qpid/branches/asyncstore/cpp/src/qpid/sys/windows/AsynchIO.cpp Fri May  4 15:39:19 2012
@@ -291,6 +291,8 @@ private:
     volatile LONG opsInProgress;
     // Is there a write in progress?
     volatile bool writeInProgress;
+    // Or a read?
+    volatile bool readInProgress;
     // Deletion requested, but there are callbacks in progress.
     volatile bool queuedDelete;
     // Socket close requested, but there are operations in progress.
@@ -344,6 +346,11 @@ private:
      * Called when there's a completion to process.
      */
     void completion(AsynchIoResult *result);
+
+    /**
+     * Helper function to facilitate the close operation
+     */
+    void cancelRead();
 };
 
 // This is used to encapsulate pure callbacks into a handle
@@ -372,6 +379,7 @@ AsynchIO::AsynchIO(const Socket& s,
     socket(s),
     opsInProgress(0),
     writeInProgress(false),
+    readInProgress(false),
     queuedDelete(false),
     queuedClose(false),
     working(false) {
@@ -389,21 +397,24 @@ AsynchIO::~AsynchIO() {
 }
 
 void AsynchIO::queueForDeletion() {
-    queuedDelete = true;
-    if (opsInProgress > 0) {
-        QPID_LOG(info, "Delete AsynchIO queued; ops in progress");
-        // AsynchIOHandler calls this then deletes itself; don't do any more
-        // callbacks.
-        readCallback = 0;
-        eofCallback = 0;
-        disCallback = 0;
-        closedCallback = 0;
-        emptyCallback = 0;
-        idleCallback = 0;
-    }
-    else {
-        delete this;
+    {
+        ScopedLock<Mutex> l(completionLock);
+        assert(!queuedDelete);
+        queuedDelete = true;
+        if (working || opsInProgress > 0) {
+            QPID_LOG(info, "Delete AsynchIO queued; ops in progress");
+            // AsynchIOHandler calls this then deletes itself; don't do any more
+            // callbacks.
+            readCallback = 0;
+            eofCallback = 0;
+            disCallback = 0;
+            closedCallback = 0;
+            emptyCallback = 0;
+            idleCallback = 0;
+            return;
+        }
     }
+    delete this;
 }
 
 void AsynchIO::start(Poller::shared_ptr poller0) {
@@ -451,9 +462,14 @@ void AsynchIO::notifyPendingWrite() {
 }
 
 void AsynchIO::queueWriteClose() {
-    queuedClose = true;
-    if (!writeInProgress)
-        notifyPendingWrite();
+    {
+        ScopedLock<Mutex> l(completionLock);
+        queuedClose = true;
+        if (working || writeInProgress)
+            // no need to summon an IO thread
+            return;
+    }
+    notifyPendingWrite();
 }
 
 bool AsynchIO::writeQueueEmpty() {
@@ -466,7 +482,7 @@ bool AsynchIO::writeQueueEmpty() {
  * called when the read is complete and data is available.
  */
 void AsynchIO::startReading() {
-    if (queuedDelete)
+    if (queuedDelete || queuedClose)
         return;
 
     // (Try to) get a buffer; look on the front since there may be an
@@ -489,6 +505,7 @@ void AsynchIO::startReading() {
                                  readCount);
         DWORD bytesReceived = 0, flags = 0;
         InterlockedIncrement(&opsInProgress);
+        readInProgress = true;
         int status = WSARecv(toSocketHandle(socket),
                              const_cast<LPWSABUF>(result->getWSABUF()), 1,
                              &bytesReceived,
@@ -616,17 +633,19 @@ void AsynchIO::close(void) {
 void AsynchIO::readComplete(AsynchReadResult *result) {
     int status = result->getStatus();
     size_t bytes = result->getTransferred();
+    readInProgress = false;
     if (status == 0 && bytes > 0) {
-        bool restartRead = true;     // May not if receiver doesn't want more
         if (readCallback)
             readCallback(*this, result->getBuff());
-        if (restartRead)
-            startReading();
+        startReading();
     }
     else {
         // No data read, so put the buffer back. It may be partially filled,
         // so "unread" it back to the front of the queue.
         unread(result->getBuff());
+        if (queuedClose) {
+            return; // Expected from cancelRead()
+        }
         notifyEof();
         if (status != 0)
         {
@@ -682,6 +701,8 @@ void AsynchIO::writeComplete(AsynchWrite
 }
 
 void AsynchIO::completion(AsynchIoResult *result) {
+    bool closing = false;
+    bool deleting = false;
     {
         ScopedLock<Mutex> l(completionLock);
         if (working) {
@@ -713,6 +734,8 @@ void AsynchIO::completion(AsynchIoResult
                 delete result;
                 result = 0;
                 InterlockedDecrement(&opsInProgress);
+                if (queuedClose && opsInProgress == 1 && readInProgress)
+                    cancelRead();
             }
             // Lock is held again.
             if (completionQueue.empty())
@@ -721,17 +744,40 @@ void AsynchIO::completion(AsynchIoResult
             completionQueue.pop();
         }
         working = false;
+        if (opsInProgress == 0) {
+            closing = queuedClose;
+            deleting = queuedDelete;
+        }
     }
     // Lock released; ok to close if ops are done and close requested.
     // Layer above will call back to queueForDeletion() if it hasn't
     // already been done. If it already has, go ahead and delete.
-    if (opsInProgress == 0) {
-        if (queuedClose)
-            // close() may cause a delete; don't trust 'this' on return
-            close();
-        else if (queuedDelete)
-            delete this;
-    }
+    if (deleting)
+        delete this;
+    else if (closing)
+        // close() may cause a delete; don't trust 'this' on return
+        close();
+}
+
+/*
+ * NOTE - this method must be called in the same context as other completions,
+ * so that the resulting readComplete, and final AsynchIO::close() is serialized
+ * after this method returns.
+ */
+void AsynchIO::cancelRead() {
+    if (queuedDelete)
+        return;                 // socket already deleted
+    else {
+        ScopedLock<Mutex> l(completionLock);;
+        if (!completionQueue.empty())
+            return;             // process it; come back later if necessary
+    }
+    // Cancel outstanding read and force to completion.  Otherwise, on a faulty
+    // physical link, the pending read can remain uncompleted indefinitely.
+    // Draining the pending read will result in the official close (and
+    // notifyClosed).  CancelIoEX() is the natural choice, but not available in
+    // XP, so we make do with closesocket().
+    socket.close();
 }
 
 } // namespace windows

Modified: qpid/branches/asyncstore/cpp/src/qpid/sys/windows/PollableCondition.cpp
URL: http://svn.apache.org/viewvc/qpid/branches/asyncstore/cpp/src/qpid/sys/windows/PollableCondition.cpp?rev=1334037&r1=1334036&r2=1334037&view=diff
==============================================================================
--- qpid/branches/asyncstore/cpp/src/qpid/sys/windows/PollableCondition.cpp (original)
+++ qpid/branches/asyncstore/cpp/src/qpid/sys/windows/PollableCondition.cpp Fri May  4 15:39:19 2012
@@ -1,6 +1,3 @@
-#ifndef QPID_SYS_WINDOWS_POLLABLECONDITION_CPP
-#define QPID_SYS_WINDOWS_POLLABLECONDITION_CPP
-
 /*
  *
  * Licensed to the Apache Software Foundation (ASF) under one
@@ -110,5 +107,3 @@ void PollableCondition::clear() {
 }
 
 }} // namespace qpid::sys
-
-#endif  /*!QPID_SYS_WINDOWS_POLLABLECONDITION_CPP*/

Modified: qpid/branches/asyncstore/cpp/src/qpid/sys/windows/Socket.cpp
URL: http://svn.apache.org/viewvc/qpid/branches/asyncstore/cpp/src/qpid/sys/windows/Socket.cpp?rev=1334037&r1=1334036&r2=1334037&view=diff
==============================================================================
--- qpid/branches/asyncstore/cpp/src/qpid/sys/windows/Socket.cpp (original)
+++ qpid/branches/asyncstore/cpp/src/qpid/sys/windows/Socket.cpp Fri May  4 15:39:19 2012
@@ -32,6 +32,9 @@
 
 #include <winsock2.h>
 
+namespace qpid {
+namespace sys {
+
 // Need to initialize WinSock. Ideally, this would be a singleton or embedded
 // in some one-time initialization function. I tried boost singleton and could
 // not get it to compile (and others located in google had the same problem).
@@ -76,13 +79,6 @@ protected:
 
 static WinSockSetup setup;
 
-} /* namespace */
-
-namespace qpid {
-namespace sys {
-
-namespace {
-
 std::string getName(SOCKET fd, bool local)
 {
     ::sockaddr_storage name_s; // big enough for any socket address

Modified: qpid/branches/asyncstore/cpp/src/qpid/sys/windows/SslAsynchIO.cpp
URL: http://svn.apache.org/viewvc/qpid/branches/asyncstore/cpp/src/qpid/sys/windows/SslAsynchIO.cpp?rev=1334037&r1=1334036&r2=1334037&view=diff
==============================================================================
--- qpid/branches/asyncstore/cpp/src/qpid/sys/windows/SslAsynchIO.cpp (original)
+++ qpid/branches/asyncstore/cpp/src/qpid/sys/windows/SslAsynchIO.cpp Fri May  4 15:39:19 2012
@@ -38,6 +38,10 @@
 #include <queue>
 #include <boost/bind.hpp>
 
+namespace qpid {
+namespace sys {
+namespace windows {
+
 namespace {
 
     /*
@@ -66,10 +70,6 @@ namespace {
     };
 }
 
-namespace qpid {
-namespace sys {
-namespace windows {
-
 SslAsynchIO::SslAsynchIO(const qpid::sys::Socket& s,
                          CredHandle hCred,
                          ReadCallback rCb,

Modified: qpid/branches/asyncstore/cpp/src/qpid/xml/XmlExchange.cpp
URL: http://svn.apache.org/viewvc/qpid/branches/asyncstore/cpp/src/qpid/xml/XmlExchange.cpp?rev=1334037&r1=1334036&r2=1334037&view=diff
==============================================================================
--- qpid/branches/asyncstore/cpp/src/qpid/xml/XmlExchange.cpp (original)
+++ qpid/branches/asyncstore/cpp/src/qpid/xml/XmlExchange.cpp Fri May  4 15:39:19 2012
@@ -283,8 +283,10 @@ bool XmlExchange::matches(Query& query, 
 // But for very large messages, if all these queries are on the first part of the data,
 // it could still be a big win.
 
-void XmlExchange::route(Deliverable& msg, const string& routingKey, const FieldTable* args)
+void XmlExchange::route(Deliverable& msg)
 {
+    const string& routingKey = msg.getMessage().getRoutingKey();
+    const FieldTable* args = msg.getMessage().getApplicationHeaders();
     PreRoute pr(msg, this);
     try {
         XmlBinding::vector::ConstPtr p;

Modified: qpid/branches/asyncstore/cpp/src/qpid/xml/XmlExchange.h
URL: http://svn.apache.org/viewvc/qpid/branches/asyncstore/cpp/src/qpid/xml/XmlExchange.h?rev=1334037&r1=1334036&r2=1334037&view=diff
==============================================================================
--- qpid/branches/asyncstore/cpp/src/qpid/xml/XmlExchange.h (original)
+++ qpid/branches/asyncstore/cpp/src/qpid/xml/XmlExchange.h Fri May  4 15:39:19 2012
@@ -82,7 +82,7 @@ class XmlExchange : public virtual Excha
 
     virtual bool unbind(Queue::shared_ptr queue, const std::string& routingKey, const qpid::framing::FieldTable* args);
 
-    virtual void route(Deliverable& msg, const std::string& routingKey, const qpid::framing::FieldTable* args);
+    virtual void route(Deliverable& msg);
 
     virtual bool isBound(Queue::shared_ptr queue, const std::string* const routingKey, const qpid::framing::FieldTable* const args);
 

Modified: qpid/branches/asyncstore/cpp/src/qpidd.cpp
URL: http://svn.apache.org/viewvc/qpid/branches/asyncstore/cpp/src/qpidd.cpp?rev=1334037&r1=1334036&r2=1334037&view=diff
==============================================================================
--- qpid/branches/asyncstore/cpp/src/qpidd.cpp (original)
+++ qpid/branches/asyncstore/cpp/src/qpidd.cpp Fri May  4 15:39:19 2012
@@ -29,6 +29,9 @@
 #include <memory>
 using namespace std;
 
+namespace qpid {
+namespace broker {
+
 auto_ptr<QpiddOptions> options;
 
 // Broker real entry; various system-invoked entrypoints call here.
@@ -87,3 +90,4 @@ int run_broker(int argc, char *argv[], b
     }
     return 1;
 }
+}}

Modified: qpid/branches/asyncstore/cpp/src/qpidd.h
URL: http://svn.apache.org/viewvc/qpid/branches/asyncstore/cpp/src/qpidd.h?rev=1334037&r1=1334036&r2=1334037&view=diff
==============================================================================
--- qpid/branches/asyncstore/cpp/src/qpidd.h (original)
+++ qpid/branches/asyncstore/cpp/src/qpidd.h Fri May  4 15:39:19 2012
@@ -26,6 +26,9 @@
 
 #include <memory>
 
+namespace qpid {
+namespace broker {
+
 // BootstrapOptions is a minimal subset of options used for a pre-parse
 // of the command line to discover which plugin modules need to be loaded.
 // The pre-parse is necessary because plugin modules may supply their own
@@ -70,4 +73,5 @@ public:
 // Broker real entry; various system-invoked entrypoints call here.
 int run_broker(int argc, char *argv[], bool hidden = false);
 
+}}
 #endif  /*!QPID_H*/

Propchange: qpid/branches/asyncstore/cpp/src/tests/
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Fri May  4 15:39:19 2012
@@ -0,0 +1,9 @@
+/qpid/branches/0.5.x-dev/qpid/cpp/src/tests:892761,894875
+/qpid/branches/0.6-release-windows-installer/cpp/src/tests:926803
+/qpid/branches/0.6-release-windows-installer/qpid/cpp/src/tests:926803,927233
+/qpid/branches/QPID-2519/cpp/src/tests:1072051-1079078
+/qpid/branches/QPID-3799-acl/cpp/src/tests:1291401-1295617
+/qpid/branches/java-network-refactor/qpid/cpp/src/tests:805429-825319
+/qpid/branches/qpid-2935/qpid/cpp/src/tests:1061302-1072333
+/qpid/branches/qpid-3346/qpid/cpp/src/tests:1144319-1179855
+/qpid/trunk/qpid/cpp/src/tests:1291265-1333987

Modified: qpid/branches/asyncstore/cpp/src/tests/Array.cpp
URL: http://svn.apache.org/viewvc/qpid/branches/asyncstore/cpp/src/tests/Array.cpp?rev=1334037&r1=1334036&r2=1334037&view=diff
==============================================================================
--- qpid/branches/asyncstore/cpp/src/tests/Array.cpp (original)
+++ qpid/branches/asyncstore/cpp/src/tests/Array.cpp Fri May  4 15:39:19 2012
@@ -58,7 +58,7 @@ QPID_AUTO_TEST_CASE(testEncodeDecode)
     BOOST_CHECK_EQUAL(a, b);
 
     std::vector<std::string> data2;
-    b.collect(data2);
+    std::transform(b.begin(), b.end(), std::back_inserter(data2), Array::get<std::string, Array::ValuePtr>);
     //BOOST_CHECK_EQUAL(data, data2);
     BOOST_CHECK(data == data2);
 }
@@ -74,7 +74,7 @@ QPID_AUTO_TEST_CASE(testArrayAssignment)
         BOOST_CHECK_EQUAL(a, b);
     }
     std::vector<std::string> data2;
-    b.collect(data2);
+    std::transform(b.begin(), b.end(), std::back_inserter(data2), Array::get<std::string, Array::ValuePtr>);
     //BOOST_CHECK_EQUAL(data, data2);
     BOOST_CHECK(data == data2);
 }

Modified: qpid/branches/asyncstore/cpp/src/tests/CMakeLists.txt
URL: http://svn.apache.org/viewvc/qpid/branches/asyncstore/cpp/src/tests/CMakeLists.txt?rev=1334037&r1=1334036&r2=1334037&view=diff
==============================================================================
--- qpid/branches/asyncstore/cpp/src/tests/CMakeLists.txt (original)
+++ qpid/branches/asyncstore/cpp/src/tests/CMakeLists.txt Fri May  4 15:39:19 2012
@@ -23,7 +23,11 @@ include (CTest)
 # Make sure that everything get built before the tests
 # Need to create a var with all the necessary top level targets
 
-add_definitions(-DBOOST_TEST_DYN_LINK)
+# If we're linking Boost for DLLs, turn that on for the unit test too.
+if (QPID_LINK_BOOST_DYNAMIC)
+    add_definitions(-DBOOST_TEST_DYN_LINK)
+endif (QPID_LINK_BOOST_DYNAMIC)
+
 include_directories( ${CMAKE_CURRENT_SOURCE_DIR} )
 
 include (FindPythonInterp)
@@ -34,8 +38,14 @@ set (abs_builddir ${CMAKE_CURRENT_BINARY
 set (abs_top_srcdir ${CMAKE_SOURCE_DIR})
 set (abs_top_builddir ${CMAKE_BINARY_DIR})
 set (builddir_lib_suffix "")
-configure_file (${CMAKE_CURRENT_SOURCE_DIR}/test_env.sh.in
-  ${CMAKE_CURRENT_BINARY_DIR}/test_env.sh)
+
+if (CMAKE_SYSTEM_NAME STREQUAL Windows)
+  configure_file (${CMAKE_CURRENT_SOURCE_DIR}/test_env.ps1.in
+    ${CMAKE_CURRENT_BINARY_DIR}/test_env.ps1)
+else (CMAKE_SYSTEM_NAME STREQUAL Windows)
+  configure_file (${CMAKE_CURRENT_SOURCE_DIR}/test_env.sh.in
+    ${CMAKE_CURRENT_BINARY_DIR}/test_env.sh)
+endif (CMAKE_SYSTEM_NAME STREQUAL Windows)
 
 
 # If valgrind is selected in the configuration step, set up the path to it
@@ -145,13 +155,6 @@ set(unit_tests_to_build
 
 mark_as_advanced(unit_tests_to_build)
 
-# Disabled till we move to amqp_0_10 codec.
-# 	amqp_0_10/serialize.cpp allSegmentTypes.h \
-# 	amqp_0_10/ProxyTemplate.cpp \
-# 	amqp_0_10/apply.cpp \
-# 	amqp_0_10/Map.cpp \
-# 	amqp_0_10/handlers.cpp 
-
 add_executable (unit_test unit_test
                 ${unit_tests_to_build} ${platform_test_additions})
 target_link_libraries (unit_test
@@ -320,7 +323,7 @@ if (BUILD_MSSQL)
   add_test (store_tests ${shell} ${CMAKE_CURRENT_SOURCE_DIR}/run_store_tests${test_script_suffix} MSSQL)
 endif (BUILD_MSSQL)
 if (BUILD_MSCLFS)
-  add_test (store_tests ${shell} ${CMAKE_CURRENT_SOURCE_DIR}/run_store_tests${test_script_suffix} MSSQL-CLFS)
+  add_test (store_tests_clfs ${shell} ${CMAKE_CURRENT_SOURCE_DIR}/run_store_tests${test_script_suffix} MSSQL-CLFS)
 endif (BUILD_MSCLFS)
 endif (PYTHON_EXECUTABLE)
 

Modified: qpid/branches/asyncstore/cpp/src/tests/ExchangeTest.cpp
URL: http://svn.apache.org/viewvc/qpid/branches/asyncstore/cpp/src/tests/ExchangeTest.cpp?rev=1334037&r1=1334036&r2=1334037&view=diff
==============================================================================
--- qpid/branches/asyncstore/cpp/src/tests/ExchangeTest.cpp (original)
+++ qpid/branches/asyncstore/cpp/src/tests/ExchangeTest.cpp Fri May  4 15:39:19 2012
@@ -60,10 +60,10 @@ QPID_AUTO_TEST_CASE(testMe)
     queue.reset();
     queue2.reset();
 
-    intrusive_ptr<Message> msgPtr(MessageUtils::createMessage("exchange", "key", false, "id"));
+    intrusive_ptr<Message> msgPtr(MessageUtils::createMessage("exchange", "abc", false, "id"));
     DeliverableMessage msg(msgPtr);
-    topic.route(msg, "abc", 0);
-    direct.route(msg, "abc", 0);
+    topic.route(msg);
+    direct.route(msg);
 
 }
 
@@ -187,17 +187,17 @@ QPID_AUTO_TEST_CASE(testSequenceOptions)
     {
         DirectExchange direct("direct1", false, args);
 
-        intrusive_ptr<Message> msg1 = cmessage("e", "A");
-        intrusive_ptr<Message> msg2 = cmessage("e", "B");
-        intrusive_ptr<Message> msg3 = cmessage("e", "C");
+        intrusive_ptr<Message> msg1 = cmessage("e", "abc");
+        intrusive_ptr<Message> msg2 = cmessage("e", "abc");
+        intrusive_ptr<Message> msg3 = cmessage("e", "abc");
 
         DeliverableMessage dmsg1(msg1);
         DeliverableMessage dmsg2(msg2);
         DeliverableMessage dmsg3(msg3);
 
-        direct.route(dmsg1, "abc", 0);
-        direct.route(dmsg2, "abc", 0);
-        direct.route(dmsg3, "abc", 0);
+        direct.route(dmsg1);
+        direct.route(dmsg2);
+        direct.route(dmsg3);
 
         BOOST_CHECK_EQUAL(1, msg1->getApplicationHeaders()->getAsInt64("qpid.msg_sequence"));
         BOOST_CHECK_EQUAL(2, msg2->getApplicationHeaders()->getAsInt64("qpid.msg_sequence"));
@@ -208,22 +208,24 @@ QPID_AUTO_TEST_CASE(testSequenceOptions)
         TopicExchange topic ("topic1", false, args);
 
         // check other exchanges, that they preroute
-        intrusive_ptr<Message> msg4 = cmessage("e", "A");
-        intrusive_ptr<Message> msg5 = cmessage("e", "B");
-        intrusive_ptr<Message> msg6 = cmessage("e", "C");
+        intrusive_ptr<Message> msg4 = cmessage("e", "abc");
+        intrusive_ptr<Message> msg5 = cmessage("e", "abc");
+
+        // Need at least empty header for the HeadersExchange to route at all
+        msg5->insertCustomProperty("", "");
+        intrusive_ptr<Message> msg6 = cmessage("e", "abc");
 
         DeliverableMessage dmsg4(msg4);
         DeliverableMessage dmsg5(msg5);
         DeliverableMessage dmsg6(msg6);
 
-        fanout.route(dmsg4, "abc", 0);
+        fanout.route(dmsg4);
         BOOST_CHECK_EQUAL(1, msg4->getApplicationHeaders()->getAsInt64("qpid.msg_sequence"));
 
-        FieldTable headers;
-        header.route(dmsg5, "abc", &headers);
+        header.route(dmsg5);
         BOOST_CHECK_EQUAL(1, msg5->getApplicationHeaders()->getAsInt64("qpid.msg_sequence"));
 
-        topic.route(dmsg6, "abc", 0);
+        topic.route(dmsg6);
         BOOST_CHECK_EQUAL(1, msg6->getApplicationHeaders()->getAsInt64("qpid.msg_sequence"));
         direct.encode(buffer);
     }
@@ -233,9 +235,9 @@ QPID_AUTO_TEST_CASE(testSequenceOptions)
         buffer.reset();
         DirectExchange::shared_ptr exch_dec = Exchange::decode(exchanges, buffer);
 
-        intrusive_ptr<Message> msg1 = cmessage("e", "A");
+        intrusive_ptr<Message> msg1 = cmessage("e", "abc");
         DeliverableMessage dmsg1(msg1);
-        exch_dec->route(dmsg1, "abc", 0);
+        exch_dec->route(dmsg1);
 
         BOOST_CHECK_EQUAL(4, msg1->getApplicationHeaders()->getAsInt64("qpid.msg_sequence"));
 
@@ -260,10 +262,10 @@ QPID_AUTO_TEST_CASE(testIVEOption)
     args2.setString("x-match", "any");
     args2.setString("a", "abc");
 
-    direct.route(dmsg1, "abc", 0);
-    fanout.route(dmsg1, "abc", 0);
-    header.route(dmsg1, "abc", &args2);
-    topic.route(dmsg1, "abc", 0);
+    direct.route(dmsg1);
+    fanout.route(dmsg1);
+    header.route(dmsg1);
+    topic.route(dmsg1);
     Queue::shared_ptr queue(new Queue("queue", true));
     Queue::shared_ptr queue1(new Queue("queue1", true));
     Queue::shared_ptr queue2(new Queue("queue2", true));

Modified: qpid/branches/asyncstore/cpp/src/tests/FieldTable.cpp
URL: http://svn.apache.org/viewvc/qpid/branches/asyncstore/cpp/src/tests/FieldTable.cpp?rev=1334037&r1=1334036&r2=1334037&view=diff
==============================================================================
--- qpid/branches/asyncstore/cpp/src/tests/FieldTable.cpp (original)
+++ qpid/branches/asyncstore/cpp/src/tests/FieldTable.cpp Fri May  4 15:39:19 2012
@@ -19,11 +19,11 @@
  *
  */
 #include <iostream>
+#include <algorithm>
 #include "qpid/framing/Array.h"
 #include "qpid/framing/FieldTable.h"
 #include "qpid/framing/FieldValue.h"
 #include "qpid/framing/List.h"
-#include "qpid/sys/alloca.h"
 
 #include "unit_test.h"
 
@@ -127,7 +127,7 @@ QPID_AUTO_TEST_CASE(testNestedValues)
         BOOST_CHECK(string("B") == b.getAsString("id"));
         a.getArray("C", c);
         std::vector<std::string> items;
-        c.collect(items);
+        std::transform(c.begin(), c.end(), std::back_inserter(items), Array::get<std::string, Array::ValuePtr>);
         BOOST_CHECK((uint) 2 == items.size());
         BOOST_CHECK(string("one") == items[0]);
         BOOST_CHECK(string("two") == items[1]);

Modified: qpid/branches/asyncstore/cpp/src/tests/Frame.cpp
URL: http://svn.apache.org/viewvc/qpid/branches/asyncstore/cpp/src/tests/Frame.cpp?rev=1334037&r1=1334036&r2=1334037&view=diff
==============================================================================
--- qpid/branches/asyncstore/cpp/src/tests/Frame.cpp (original)
+++ qpid/branches/asyncstore/cpp/src/tests/Frame.cpp Fri May  4 15:39:19 2012
@@ -30,7 +30,6 @@ QPID_AUTO_TEST_SUITE(FrameTestSuite)
 
 using namespace std;
 using namespace qpid::framing;
-using namespace boost;
 
 QPID_AUTO_TEST_CASE(testContentBody) {
     Frame f(42, AMQContentBody("foobar"));

Modified: qpid/branches/asyncstore/cpp/src/tests/FramingTest.cpp
URL: http://svn.apache.org/viewvc/qpid/branches/asyncstore/cpp/src/tests/FramingTest.cpp?rev=1334037&r1=1334036&r2=1334037&view=diff
==============================================================================
--- qpid/branches/asyncstore/cpp/src/tests/FramingTest.cpp (original)
+++ qpid/branches/asyncstore/cpp/src/tests/FramingTest.cpp Fri May  4 15:39:19 2012
@@ -25,6 +25,7 @@
 #include "qpid/framing/all_method_bodies.h"
 #include "qpid/framing/amqp_framing.h"
 #include "qpid/framing/reply_exceptions.h"
+#include "qpid/framing/FieldValue.h"
 #include "unit_test.h"
 
 #include <boost/bind.hpp>

Modified: qpid/branches/asyncstore/cpp/src/tests/Makefile.am
URL: http://svn.apache.org/viewvc/qpid/branches/asyncstore/cpp/src/tests/Makefile.am?rev=1334037&r1=1334036&r2=1334037&view=diff
==============================================================================
--- qpid/branches/asyncstore/cpp/src/tests/Makefile.am (original)
+++ qpid/branches/asyncstore/cpp/src/tests/Makefile.am Fri May  4 15:39:19 2012
@@ -149,7 +149,7 @@ endif
 
 # Test programs that are installed and therefore built as part of make, not make check
 
-qpidexectest_SCRIPTS += qpid-cpp-benchmark install_env.sh
+qpidexectest_SCRIPTS += qpid-cpp-benchmark qpid-cluster-benchmark install_env.sh
 EXTRA_DIST += qpid-cpp-benchmark install_env.sh
 
 qpidexectest_PROGRAMS += receiver
@@ -320,7 +320,7 @@ EXTRA_DIST +=								\
   header_test.py							\
   ssl_test								\
   config.null								\
-  ais_check								\
+  cpg_check.sh.in							\
   run_federation_tests							\
   run_federation_sys_tests                  \
   run_long_federation_sys_tests             \
@@ -351,7 +351,9 @@ EXTRA_DIST +=								\
   topictest.ps1                                                         \
   run_queue_flow_limit_tests						\
   run_msg_group_tests							\
-  ipv6_test
+  ipv6_test								\
+  ha_tests.py							\
+  test_env.ps1.in
 
 check_LTLIBRARIES += libdlclose_noop.la
 libdlclose_noop_la_LDFLAGS = -module -rpath $(abs_builddir)
@@ -366,9 +368,15 @@ LONG_TESTS+=start_broker \
  fanout_perftest shared_perftest multiq_perftest topic_perftest run_ring_queue_test \
  run_msg_group_tests_soak \
  stop_broker \
- run_long_federation_sys_tests \
- run_failover_soak reliable_replication_test \
- federated_cluster_test_with_node_failure
+ run_long_federation_sys_tests
+
+if HAVE_LIBCPG
+
+LONG_TESTS+=	federated_cluster_test_with_node_failure	\
+		run_failover_soak				\
+		reliable_replication_test
+
+endif HAVE_LIBCPG
 
 EXTRA_DIST+=						\
 	fanout_perftest					\
@@ -379,7 +387,8 @@ EXTRA_DIST+=						\
 	reliable_replication_test			\
 	federated_cluster_test_with_node_failure        \
 	sasl_test_setup.sh                              \
-	run_msg_group_tests_soak
+	run_msg_group_tests_soak			\
+	qpidd-empty.conf
 
 check-long:
 	$(MAKE) check TESTS="$(LONG_TESTS)" VALGRIND=

Modified: qpid/branches/asyncstore/cpp/src/tests/MessagingSessionTests.cpp
URL: http://svn.apache.org/viewvc/qpid/branches/asyncstore/cpp/src/tests/MessagingSessionTests.cpp?rev=1334037&r1=1334036&r2=1334037&view=diff
==============================================================================
--- qpid/branches/asyncstore/cpp/src/tests/MessagingSessionTests.cpp (original)
+++ qpid/branches/asyncstore/cpp/src/tests/MessagingSessionTests.cpp Fri May  4 15:39:19 2012
@@ -1139,6 +1139,13 @@ QPID_AUTO_TEST_CASE(testHeadersExchange)
     }
 }
 
+QPID_AUTO_TEST_CASE(testLargeRoutingKey)
+{
+    MessagingFixture fix;
+    std::string address = "amq.direct/" + std::string(300, 'x');//routing/binding key can be at most 225 chars in 0-10
+    BOOST_CHECK_THROW(fix.session.createReceiver(address), qpid::messaging::MessagingException);
+}
+
 QPID_AUTO_TEST_SUITE_END()
 
 }} // namespace qpid::tests

Modified: qpid/branches/asyncstore/cpp/src/tests/QueueFlowLimitTest.cpp
URL: http://svn.apache.org/viewvc/qpid/branches/asyncstore/cpp/src/tests/QueueFlowLimitTest.cpp?rev=1334037&r1=1334036&r2=1334037&view=diff
==============================================================================
--- qpid/branches/asyncstore/cpp/src/tests/QueueFlowLimitTest.cpp (original)
+++ qpid/branches/asyncstore/cpp/src/tests/QueueFlowLimitTest.cpp Fri May  4 15:39:19 2012
@@ -27,6 +27,7 @@
 #include "qpid/broker/QueueFlowLimit.h"
 #include "qpid/sys/Time.h"
 #include "qpid/framing/reply_exceptions.h"
+#include "qpid/framing/FieldValue.h"
 #include "MessageUtils.h"
 #include "BrokerFixture.h"
 

Modified: qpid/branches/asyncstore/cpp/src/tests/QueueTest.cpp
URL: http://svn.apache.org/viewvc/qpid/branches/asyncstore/cpp/src/tests/QueueTest.cpp?rev=1334037&r1=1334036&r2=1334037&view=diff
==============================================================================
--- qpid/branches/asyncstore/cpp/src/tests/QueueTest.cpp (original)
+++ qpid/branches/asyncstore/cpp/src/tests/QueueTest.cpp Fri May  4 15:39:19 2012
@@ -254,8 +254,8 @@ QPID_AUTO_TEST_CASE(testBound){
 
     //ensure the remaining exchanges don't still have the queue bound to them:
     FailOnDeliver deliverable;
-    exchange1->route(deliverable, key, &args);
-    exchange3->route(deliverable, key, &args);
+    exchange1->route(deliverable);
+    exchange3->route(deliverable);
 }
 
 QPID_AUTO_TEST_CASE(testPersistLastNodeStanding){
@@ -1151,7 +1151,7 @@ QPID_AUTO_TEST_CASE(testFlowToDiskBlocki
 
     intrusive_ptr<Message> msg01 = mkMsg(testStore, std::string(5, 'X'));  // transient w/ content
     DeliverableMessage dmsg01(msg01);
-    sbtFanout1.route(dmsg01, "", 0); // Brings queue 1 to capacity limit
+    sbtFanout1.route(dmsg01); // Brings queue 1 to capacity limit
     msg01->tryReleaseContent();
     BOOST_CHECK_EQUAL(msg01->isContentReleased(), false);
     BOOST_CHECK_EQUAL(1u, tq1->getMessageCount());
@@ -1160,7 +1160,7 @@ QPID_AUTO_TEST_CASE(testFlowToDiskBlocki
     DeliverableMessage dmsg02(msg02);
     {
         ScopedSuppressLogging sl; // suppress expected error messages.
-        BOOST_CHECK_THROW(sbtFanout1.route(dmsg02, "", 0), ResourceLimitExceededException);
+        BOOST_CHECK_THROW(sbtFanout1.route(dmsg02), ResourceLimitExceededException);
     }
     msg02->tryReleaseContent();
     BOOST_CHECK_EQUAL(msg02->isContentReleased(), false);
@@ -1170,7 +1170,7 @@ QPID_AUTO_TEST_CASE(testFlowToDiskBlocki
     DeliverableMessage dmsg03(msg03);
     {
         ScopedSuppressLogging sl; // suppress expected error messages.
-        BOOST_CHECK_THROW(sbtFanout1.route(dmsg03, "", 0), ResourceLimitExceededException);
+        BOOST_CHECK_THROW(sbtFanout1.route(dmsg03), ResourceLimitExceededException);
     }
     msg03->tryReleaseContent();
     BOOST_CHECK_EQUAL(msg03->isContentReleased(), false);
@@ -1180,7 +1180,7 @@ QPID_AUTO_TEST_CASE(testFlowToDiskBlocki
     DeliverableMessage dmsg04(msg04);
     {
         ScopedSuppressLogging sl; // suppress expected error messages.
-        BOOST_CHECK_THROW(sbtFanout1.route(dmsg04, "", 0), ResourceLimitExceededException);
+        BOOST_CHECK_THROW(sbtFanout1.route(dmsg04), ResourceLimitExceededException);
     }
     msg04->tryReleaseContent();
     BOOST_CHECK_EQUAL(msg04->isContentReleased(), false);
@@ -1190,7 +1190,7 @@ QPID_AUTO_TEST_CASE(testFlowToDiskBlocki
     DeliverableMessage dmsg05(msg05);
     {
         ScopedSuppressLogging sl; // suppress expected error messages.
-        BOOST_CHECK_THROW(sbtFanout1.route(dmsg05, "", 0), ResourceLimitExceededException);
+        BOOST_CHECK_THROW(sbtFanout1.route(dmsg05), ResourceLimitExceededException);
     }
     msg05->tryReleaseContent();
     BOOST_CHECK_EQUAL(msg05->isContentReleased(), false);
@@ -1205,35 +1205,35 @@ QPID_AUTO_TEST_CASE(testFlowToDiskBlocki
 
     intrusive_ptr<Message> msg06 = mkMsg(testStore, std::string(5, 'X'));  // transient w/ content
     DeliverableMessage dmsg06(msg06);
-    sbdFanout2.route(dmsg06, "", 0); // Brings queue 2 to capacity limit
+    sbdFanout2.route(dmsg06); // Brings queue 2 to capacity limit
     msg06->tryReleaseContent();
     BOOST_CHECK_EQUAL(msg06->isContentReleased(), false);
     BOOST_CHECK_EQUAL(1u, dq2->getMessageCount());
 
     intrusive_ptr<Message> msg07 = mkMsg(testStore, std::string(5, 'X'));  // transient w/ content
     DeliverableMessage dmsg07(msg07);
-    sbdFanout2.route(dmsg07, "", 0);
+    sbdFanout2.route(dmsg07);
     msg07->tryReleaseContent();
     BOOST_CHECK_EQUAL(msg07->isContentReleased(), true);
     BOOST_CHECK_EQUAL(2u, dq2->getMessageCount());
 
     intrusive_ptr<Message> msg08 = mkMsg(testStore, std::string(5, 'X'), true);  // durable w/ content
     DeliverableMessage dmsg08(msg08);
-    sbdFanout2.route(dmsg08, "", 0);
+    sbdFanout2.route(dmsg08);
     msg08->tryReleaseContent();
     BOOST_CHECK_EQUAL(msg08->isContentReleased(), true);
     BOOST_CHECK_EQUAL(3u, dq2->getMessageCount());
 
     intrusive_ptr<Message> msg09 = mkMsg(testStore);  // transient no content
     DeliverableMessage dmsg09(msg09);
-    sbdFanout2.route(dmsg09, "", 0);
+    sbdFanout2.route(dmsg09);
     msg09->tryReleaseContent();
     BOOST_CHECK_EQUAL(msg09->isContentReleased(), true);
     BOOST_CHECK_EQUAL(4u, dq2->getMessageCount());
 
     intrusive_ptr<Message> msg10 = mkMsg(testStore, "", true);  // durable no content
     DeliverableMessage dmsg10(msg10);
-    sbdFanout2.route(dmsg10, "", 0);
+    sbdFanout2.route(dmsg10);
     msg10->tryReleaseContent();
     BOOST_CHECK_EQUAL(msg10->isContentReleased(), true);
     BOOST_CHECK_EQUAL(5u, dq2->getMessageCount());
@@ -1253,7 +1253,7 @@ QPID_AUTO_TEST_CASE(testFlowToDiskBlocki
 
     intrusive_ptr<Message> msg11 = mkMsg(testStore, std::string(5, 'X'));  // transient w/ content
     DeliverableMessage dmsg11(msg11);
-    mbdFanout3.route(dmsg11, "", 0); // Brings queues 3 and 4 to capacity limit
+    mbdFanout3.route(dmsg11); // Brings queues 3 and 4 to capacity limit
     msg11->tryReleaseContent();
     BOOST_CHECK_EQUAL(msg11->isContentReleased(), false);
     BOOST_CHECK_EQUAL(1u, dq3->getMessageCount());
@@ -1262,7 +1262,7 @@ QPID_AUTO_TEST_CASE(testFlowToDiskBlocki
 
     intrusive_ptr<Message> msg12 = mkMsg(testStore, std::string(5, 'X'));  // transient w/ content
     DeliverableMessage dmsg12(msg12);
-    mbdFanout3.route(dmsg12, "", 0);
+    mbdFanout3.route(dmsg12);
     msg12->tryReleaseContent();
     BOOST_CHECK_EQUAL(msg12->isContentReleased(), false); // XXXX - consequence of transient msg multi-queue ftd policy-handling limitations, fix in broker at some point!
     BOOST_CHECK_EQUAL(2u, dq3->getMessageCount());
@@ -1271,7 +1271,7 @@ QPID_AUTO_TEST_CASE(testFlowToDiskBlocki
 
     intrusive_ptr<Message> msg13 = mkMsg(testStore, std::string(5, 'X'), true);  // durable w/ content
     DeliverableMessage dmsg13(msg13);
-    mbdFanout3.route(dmsg13, "", 0);
+    mbdFanout3.route(dmsg13);
     msg13->tryReleaseContent();
     BOOST_CHECK_EQUAL(msg13->isContentReleased(), true);
     BOOST_CHECK_EQUAL(3u, dq3->getMessageCount());
@@ -1280,7 +1280,7 @@ QPID_AUTO_TEST_CASE(testFlowToDiskBlocki
 
     intrusive_ptr<Message> msg14 = mkMsg(testStore);  // transient no content
     DeliverableMessage dmsg14(msg14);
-    mbdFanout3.route(dmsg14, "", 0);
+    mbdFanout3.route(dmsg14);
     msg14->tryReleaseContent();
     BOOST_CHECK_EQUAL(msg14->isContentReleased(), false); // XXXX - consequence of transient msg multi-queue ftd policy-handling limitations, fix in broker at some point!
     BOOST_CHECK_EQUAL(4u, dq3->getMessageCount());
@@ -1289,7 +1289,7 @@ QPID_AUTO_TEST_CASE(testFlowToDiskBlocki
 
     intrusive_ptr<Message> msg15 = mkMsg(testStore, "", true);  // durable no content
     DeliverableMessage dmsg15(msg15);
-    mbdFanout3.route(dmsg15, "", 0);
+    mbdFanout3.route(dmsg15);
     msg15->tryReleaseContent();
     BOOST_CHECK_EQUAL(msg15->isContentReleased(), true);
     BOOST_CHECK_EQUAL(5u, dq3->getMessageCount());
@@ -1307,7 +1307,7 @@ QPID_AUTO_TEST_CASE(testFlowToDiskBlocki
 
     intrusive_ptr<Message> msg16 = mkMsg(testStore, std::string(5, 'X'));  // transient w/ content
     DeliverableMessage dmsg16(msg16);
-    mbdFanout3.route(dmsg16, "", 0);
+    mbdFanout3.route(dmsg16);
     msg16->tryReleaseContent();
     BOOST_CHECK_EQUAL(msg16->isContentReleased(), false);
     BOOST_CHECK_EQUAL(6u, dq3->getMessageCount());
@@ -1316,7 +1316,7 @@ QPID_AUTO_TEST_CASE(testFlowToDiskBlocki
 
     intrusive_ptr<Message> msg17 = mkMsg(testStore, std::string(5, 'X'), true);  // durable w/ content
     DeliverableMessage dmsg17(msg17);
-    mbdFanout3.route(dmsg17, "", 0);
+    mbdFanout3.route(dmsg17);
     msg17->tryReleaseContent();
     BOOST_CHECK_EQUAL(msg17->isContentReleased(), false);
     BOOST_CHECK_EQUAL(7u, dq3->getMessageCount());
@@ -1325,7 +1325,7 @@ QPID_AUTO_TEST_CASE(testFlowToDiskBlocki
 
     intrusive_ptr<Message> msg18 = mkMsg(testStore);  // transient no content
     DeliverableMessage dmsg18(msg18);
-    mbdFanout3.route(dmsg18, "", 0);
+    mbdFanout3.route(dmsg18);
     msg18->tryReleaseContent();
     BOOST_CHECK_EQUAL(msg18->isContentReleased(), false);
     BOOST_CHECK_EQUAL(8u, dq3->getMessageCount());
@@ -1334,7 +1334,7 @@ QPID_AUTO_TEST_CASE(testFlowToDiskBlocki
 
     intrusive_ptr<Message> msg19 = mkMsg(testStore, "", true);  // durable no content
     DeliverableMessage dmsg19(msg19);
-    mbdFanout3.route(dmsg19, "", 0);
+    mbdFanout3.route(dmsg19);
     msg19->tryReleaseContent();
     BOOST_CHECK_EQUAL(msg19->isContentReleased(), false);
     BOOST_CHECK_EQUAL(9u, dq3->getMessageCount());
@@ -1357,7 +1357,7 @@ QPID_AUTO_TEST_CASE(testFlowToDiskBlocki
 
     intrusive_ptr<Message> msg20 = mkMsg(testStore, std::string(5, 'X'));  // transient w/ content
     DeliverableMessage dmsg20(msg20);
-    mbmFanout4.route(dmsg20, "", 0); // Brings queue 7 to capacity limit
+    mbmFanout4.route(dmsg20); // Brings queue 7 to capacity limit
     msg20->tryReleaseContent();
     BOOST_CHECK_EQUAL(msg20->isContentReleased(), false);
     BOOST_CHECK_EQUAL(1u, dq7->getMessageCount());
@@ -1366,7 +1366,7 @@ QPID_AUTO_TEST_CASE(testFlowToDiskBlocki
 
     intrusive_ptr<Message> msg21 = mkMsg(testStore, std::string(5, 'X'));  // transient w/ content
     DeliverableMessage dmsg21(msg21);
-    mbmFanout4.route(dmsg21, "", 0);
+    mbmFanout4.route(dmsg21);
     msg21->tryReleaseContent();
     BOOST_CHECK_EQUAL(msg21->isContentReleased(), false);
     BOOST_CHECK_EQUAL(2u, dq7->getMessageCount()); // over limit
@@ -1375,7 +1375,7 @@ QPID_AUTO_TEST_CASE(testFlowToDiskBlocki
 
     intrusive_ptr<Message> msg22 = mkMsg(testStore, std::string(5, 'X'), true);  // durable w/ content
     DeliverableMessage dmsg22(msg22);
-    mbmFanout4.route(dmsg22, "", 0);
+    mbmFanout4.route(dmsg22);
     msg22->tryReleaseContent();
     BOOST_CHECK_EQUAL(msg22->isContentReleased(), false);
     BOOST_CHECK_EQUAL(3u, dq7->getMessageCount()); // over limit
@@ -1384,7 +1384,7 @@ QPID_AUTO_TEST_CASE(testFlowToDiskBlocki
 
     intrusive_ptr<Message> msg23 = mkMsg(testStore);  // transient no content
     DeliverableMessage dmsg23(msg23);
-    mbmFanout4.route(dmsg23, "", 0);
+    mbmFanout4.route(dmsg23);
     msg23->tryReleaseContent();
     BOOST_CHECK_EQUAL(msg23->isContentReleased(), false);
     BOOST_CHECK_EQUAL(4u, dq7->getMessageCount()); // over limit
@@ -1393,7 +1393,7 @@ QPID_AUTO_TEST_CASE(testFlowToDiskBlocki
 
     intrusive_ptr<Message> msg24 = mkMsg(testStore, "", true);  // durable no content
     DeliverableMessage dmsg24(msg24);
-    mbmFanout4.route(dmsg24, "", 0);
+    mbmFanout4.route(dmsg24);
     msg24->tryReleaseContent();
     BOOST_CHECK_EQUAL(msg24->isContentReleased(), false);
     BOOST_CHECK_EQUAL(5u, dq7->getMessageCount()); // over limit

Modified: qpid/branches/asyncstore/cpp/src/tests/RefCounted.cpp
URL: http://svn.apache.org/viewvc/qpid/branches/asyncstore/cpp/src/tests/RefCounted.cpp?rev=1334037&r1=1334036&r2=1334037&view=diff
==============================================================================
--- qpid/branches/asyncstore/cpp/src/tests/RefCounted.cpp (original)
+++ qpid/branches/asyncstore/cpp/src/tests/RefCounted.cpp Fri May  4 15:39:19 2012
@@ -21,15 +21,15 @@
 
 #include "unit_test.h"
 
+namespace qpid {
+namespace tests {
+
 QPID_AUTO_TEST_SUITE(RefCountedTestSuiteTestSuite)
 
 using boost::intrusive_ptr;
 using namespace std;
 using namespace qpid;
 
-namespace qpid {
-namespace tests {
-
 struct CountMe : public RefCounted {
     static int instances;
     CountMe() { ++instances; }

Modified: qpid/branches/asyncstore/cpp/src/tests/SessionState.cpp
URL: http://svn.apache.org/viewvc/qpid/branches/asyncstore/cpp/src/tests/SessionState.cpp?rev=1334037&r1=1334036&r2=1334037&view=diff
==============================================================================
--- qpid/branches/asyncstore/cpp/src/tests/SessionState.cpp (original)
+++ qpid/branches/asyncstore/cpp/src/tests/SessionState.cpp Fri May  4 15:39:19 2012
@@ -34,7 +34,6 @@ namespace tests {
 QPID_AUTO_TEST_SUITE(SessionStateTestSuite)
 
 using namespace std;
-using namespace boost;
 using namespace qpid::framing;
 
 // ================================================================

Modified: qpid/branches/asyncstore/cpp/src/tests/StringUtils.cpp
URL: http://svn.apache.org/viewvc/qpid/branches/asyncstore/cpp/src/tests/StringUtils.cpp?rev=1334037&r1=1334036&r2=1334037&view=diff
==============================================================================
--- qpid/branches/asyncstore/cpp/src/tests/StringUtils.cpp (original)
+++ qpid/branches/asyncstore/cpp/src/tests/StringUtils.cpp Fri May  4 15:39:19 2012
@@ -23,9 +23,11 @@
 
 #include "unit_test.h"
 
+namespace qpid {
+namespace tests {
+
 QPID_AUTO_TEST_SUITE(StringUtilsTestSuite)
 
-using namespace qpid;
 using std::string;
 
 QPID_AUTO_TEST_CASE(testSplit_general)
@@ -75,3 +77,5 @@ QPID_AUTO_TEST_CASE(testSplit_empty)
 }
 
 QPID_AUTO_TEST_SUITE_END()
+
+}}

Modified: qpid/branches/asyncstore/cpp/src/tests/Uuid.cpp
URL: http://svn.apache.org/viewvc/qpid/branches/asyncstore/cpp/src/tests/Uuid.cpp?rev=1334037&r1=1334036&r2=1334037&view=diff
==============================================================================
--- qpid/branches/asyncstore/cpp/src/tests/Uuid.cpp (original)
+++ qpid/branches/asyncstore/cpp/src/tests/Uuid.cpp Fri May  4 15:39:19 2012
@@ -48,7 +48,7 @@ QPID_AUTO_TEST_CASE(testUuidCtor) {
     for_each(uuids.begin(), uuids.end(), unique);
 }
 
-boost::array<uint8_t, 16>  sample =  {{'\x1b', '\x4e', '\x28', '\xba', '\x2f', '\xa1', '\x11', '\xd2', '\x88', '\x3f', '\xb9', '\xa7', '\x61', '\xbd', '\xe3', '\xfb'}};
+boost::array<uint8_t, 16>  sample =  {{0x1b, 0x4e, 0x28, 0xba, 0x2f, 0xa1, 0x11, 0xd2, 0x88, 0x3f, 0xb9, 0xa7, 0x61, 0xbd, 0xe3, 0xfb}};
 const string sampleStr("1b4e28ba-2fa1-11d2-883f-b9a761bde3fb");
 const string zeroStr("00000000-0000-0000-0000-000000000000");
 



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org