summaryrefslogtreecommitdiff
path: root/qpid/cpp/src/tests
Commit message (Collapse)AuthorAgeFilesLines
...
* QPID-5519: ACL property/properties for paged queues - fixed typo, added ↵Pavel Moravec2014-02-031-0/+223
| | | | | | tests and documentation git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1563866 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5485: By default use a subdirectory of the data dir called "pq" forAndrew Stitcher2014-01-301-1/+1
| | | | | | | page queue files. If neither data dir nor paging dir are set then error on any attempt to create a paged queue. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1563012 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5513: HA backup fails if number of replicated queues exceeds number of ↵Alan Conway2014-01-271-1/+1
| | | | | | | | channels. Fix link error (incorrect libraries listed) in ha_test_max_queues on windows. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1561754 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5513: HA backup fails if number of replicated queues exceeds number of ↵Alan Conway2014-01-245-7/+92
| | | | | | | | | | | | | | | | | | | | | | | | | channels. The problem: - create cluster of 2 brokers. - create more than 32768 queues (exceeds number of channels on a connection) - backup exits with critical error but - client creating queues receives no error, primary continues with unreplicated queue. The solution: Primary raises an error to the client if it attempts to create queues in excess of the channel limit. The queue is not created on primary or backup, primary and backup continue as normal. In addition: raised the channel limit from 32k to 64k. There was no reason for the smaller limit. See discussion: http://qpid.2158936.n2.nabble.com/CHANNEL-MAX-and-CHANNEL-HIGH-BIT-question-tp7603121p7603138.html New unit test to reproduce the issue, must create > 64k queues. Other minor improvements: - brokertest framework doesn't override --log options in the arguments. - increased default heartbeat in test framework for tests that have busy brokers. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1561206 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Make the python test install depend on the python files.Andrew Stitcher2014-01-241-2/+5
| | | | | | | | - So just after the previous checkin Gordon changed the python code. This made me think that the python install needs to have the dependencies! git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1561130 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Changes to python related build processes:Andrew Stitcher2014-01-231-4/+16
| | | | | | | | | | - Use an intermediate build area in the build area not in the source. -- With this change the source tree is now completely untouched during a build. - Fiddle with CMake so that the python install into the build area doesn't happen on every build. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1560851 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5506: Use a randomness source to certutil that will definitely exist.Andrew Stitcher2014-01-231-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1560692 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5489: Uuid code improvementsAndrew Stitcher2014-01-172-9/+6
| | | | | | | | | | | | | - Don't use uuid_compare() as it will get the wrong version of the function under FreeBSD which has a uuid library build into libc with different function signatures from libuuid but some overlapping names. - Reorganise the uuid code to limit the used external symbols to uuid_generate(), uuid_parse(), uuid_unparse() - Minimise the framing::Uuid code so that it is a simple wrapper around types::Uuid - Use uuid_generate() as the symbol to search in CMake (uuid_compare() isn't used in qpid anymore). git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1559017 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5452: Change installation directory for qpid-send/qpid-receiveAndrew Stitcher2014-01-141-9/+13
| | | | | | | | | | qpid-send/qpid/receive are useful utilities in their own right and not just used for testing so install them in an easily accessible location. Patch from Irina Boverman git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1558193 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5428: Heartbeats not in use when attempting to connect with python client.Alan Conway2014-01-091-0/+27
| | | | | | | | | | | | | | | | | | | | | Heartbeats ignored when opening a connection, could hang indefinitely Need to cover 3 cases (test included): - Connect sucessful but then broker stalls. - Connect to a stalled broker that never responds. - Fail-over to a stalled broker that never responds All cases are handled by the following fixes to driver.py: - Check for heartbeats even before engine._connected since we may time out before receiving open-ok if the peer is stalled and never sends data. - Set _last_in and _last_out so that we time heartbeats from the start of the connection if no data is ever sent or received. - Call self.update_status in Driver.timeout to detect connection closed due to heartbeat timeout (rather than a readable or writeable event.) Make update_status a no-op if engine or transport are not yet set up. - Don't consider reconnect complete in connect(), wait till we get the open-ok. See the comment on Driver._check_retry_ok() git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1556971 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Fix brokertest.py so it doesn't try to load two stores.Alan Conway2014-01-071-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1556344 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Install python code as part of cmake make phaseAlan Conway2014-01-061-9/+5
| | | | | | | | | Previosly the qpid/python code was being installed only during cmake configuration phase and was not updated if the python code changed later. Added a custom target to run setup.py whenever make is run. setup.py is smart enough not to do un-necessary work if the python files have not changed. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1555989 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5415: Implement control of internal log output in qpid::messaging APIAndrew Stitcher2014-01-032-0/+155
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1555202 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5435: use the setContentObject() method to set string content (i.e. ↵Gordon Sim2013-12-191-2/+2
| | | | | | assume it is utf8) git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1552401 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5430: HA primary broker does not go active if there are no replicated ↵Alan Conway2013-12-181-2/+7
| | | | | | | | | | queues. Primary::opened was not checking if the primary was ready after a knonw backup reconnected, only when a replicated queue became ready. Thus if there were no replicated queues the primary never became ready. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1552025 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Add missing apache copyright licence text.Alan Conway2013-12-166-1/+117
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1551304 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5421: HA replication error in stand-alone replicationAlan Conway2013-12-131-26/+27
| | | | | | | | | | | | | | | | | There were replication errors because with stand-alone replication an IdSetter was not set on the original queue until queue replication was set up. Any messages on the queue *before* replication was setup had 0 replication IDs. When one of those messages was dequeued on the source queue, an incorrect message was dequeued on the replica queue. The fix is to add an IdSetter to every queue when replication is enabled. The unit test ha_tests.ReplicationTests.test_standalone_queue_replica has been updated to test for this issue. This commit also has some general tidy-up work around IdSetter and QueueSnapshot. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1550819 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5404: HA broker message duplication when deleting a queue with an ↵Alan Conway2013-12-101-72/+40
| | | | | | | | | | | | | | | alt-exchange The old code ran auto-delete on the backup on disconnect. This reroutes messages onto the alt queue with incorrect replication IDs from the original queue, and then replicates duplicate rerouted messages from the primary. The solution is to process auto deletes on the new primary and let them replicate to the backups. - Move all auto-delete logic into QueueReplicator - Primary process auto-delete on QueueReplicator as part of promotion. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1549844 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Remove useless commentsAndrew Stitcher2013-12-091-6/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1549638 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5383, QPID-5384: added some test cases for assertionsGordon Sim2013-12-031-2/+35
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1547497 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5278 , QPID-5281: Queue flow limit validation ignores size parameters , ↵Pavel Moravec2013-11-191-26/+17
| | | | | | Creating a queue with invalid settings results in no queue but only its management object exists git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1543449 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5354: added testGordon Sim2013-11-181-1/+6
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1543019 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Don't need full trace for regular test runsAndrew Stitcher2013-11-141-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1541766 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5330: Typo in original checkinAndrew Stitcher2013-11-141-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1541765 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5306: Improve test wrapper to avoid using getopt for long optionsAndrew Stitcher2013-11-142-5/+41
| | | | | | | Using getopt with long options is a gnu extension and so best avoided for portability reasons. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1541764 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5336: Don't hardcode location of bash in shell scriptsAndrew Stitcher2013-11-1454-54/+54
| | | | | | | As bash isn't specified by POSIX its location is variable. Specifically under BSDs it isn't found in /bin/bash. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1541763 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5330: Simplify testing for presence of python testing code -Andrew Stitcher2013-11-1218-265/+78
| | | | | | | this makes it much easier not to call the python testing code when it isn't available git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1541241 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5275: HA transactions failing in qpid-cluster-benchmarkAlan Conway2013-11-122-23/+62
| | | | | | | | | | | | | | | | | | The test was failing due to incorrect handling of the transaction lifecycle: - Failing to handle the automatic rollback of the empty TX at session close. - Deleting the tx-q before all backups were finished with it. The fixes include - Make tx-q auto-delete, deleted only when the TxReplicators cancel their subscriptions. - Use markInUse/releaseFromUse on the primary to keep the tx-q until the primary is done. - Count TxReplicators for auto-delete (unlike normal QueueReplicators) - Improved error handling and log messages - Handle *incoming* exceptions on a federation link by passing to ErrorListener - QueueReplicator catches incoming not-found and resource-deleted exceptions - close the backup bridge, handle race between subscribe and delete. - Simplify QueueSnapshots, remove need for snapshot map. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1541146 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5251: allow policies to be specified that will create topics or queues ↵Gordon Sim2013-11-122-1/+210
| | | | | | on demand if they match the specified pattern git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1541059 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5301: support autodeleted exchangesGordon Sim2013-11-123-13/+80
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1541058 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5318: HA tests fail sporadically with "AttributeError: 'NoneType' ↵Alan Conway2013-11-081-2/+3
| | | | | | | | | object has no attribute 'name'" This was due to a race condition where a session was deleted while the QmfAgent was looking it up. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1540171 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5312: make sure page is loaded before attempting to find message in itGordon Sim2013-11-081-0/+11
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1540136 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5304: Alow this change to work with earlier versions of boostAndrew Stitcher2013-11-072-9/+12
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1539777 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5308: Allow various bits of the test outputs to be XMLAndrew Stitcher2013-11-073-20/+51
| | | | | | | - This meshes nicely with the Jenkins CI system which can better display tests results generated in XML. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1539686 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5306: Python isn't optional in build, so don't need to test for it.Andrew Stitcher2013-11-071-17/+11
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1539511 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5306: Improve c++ tests some more:Andrew Stitcher2013-11-0713-569/+96
| | | | | | | | | | | | | | Add options to run_test script: --working-dir - run the test in this directory --build-dir - set the top of the build tree --source-dir - set the top of the source tree --python - run a python test --start-broker - start/stop broker before and after test --broker-options - allow non default broker options Remove a bunch of now obsolete testing related scripts git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1539510 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5304: Allow c++ unit tests to run if XML_LIB env var not setAndrew Stitcher2013-11-071-4/+9
| | | | | | | (The tests for the xml exchange will obviously fail, but at least you can run anything else you might have been interested in) git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1539505 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5277: remove install directive for qpidtGordon Sim2013-11-041-2/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1538656 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5277: removed qpidt as qpid-config now offers similar functionalityGordon Sim2013-11-041-141/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1538627 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5284: ensure timestamp is added to the data that is persistedGordon Sim2013-11-011-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1537889 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5283: ensure queue has no consumers before granting exclusive ownershipGordon Sim2013-10-311-1/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1537579 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Removed reference to non-existent test.Alan Conway2013-10-311-2/+0
| | | | | | Removed test "NAME" from qpid/cpp/src/tests/legacystore/CMakeLists.txt. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1537512 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5279: test exclusivity checks in 1.0Gordon Sim2013-10-312-1/+53
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1537497 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5139: HA transactions block a thread, can deadlock the brokerAlan Conway2013-10-293-24/+42
| | | | | | | | | | | | | | | | | | | | | PrimaryTxObserver::prepare used to block pending responses from each backup. With concurrent transactions this can deadlock the broker: once all worker threads are blocked in prepare, responses from backups cannot be received. This commit generalizes the async completion mechanism for messages to allow async completion of arbitrary commands. It leaves the special-case code for messages undisturbed but adds a second path (starting from SessionState::handleCommand) for async completion of other commands. In particular it implements tx.commit to allow async completion. TxBuffer is now an AsyncCompletion and commitLocal() is split into - startCommit() called by SemanticState::commit() - endCommit() called when the commit command completes TxAccept no longer holds pre-computed ranges, compute fresh each time. - Avoid range iterators going out of date during a delayed commit. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1536754 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5139: Make TxBuffer inherit from AsyncCompletion.Alan Conway2013-10-292-13/+13
| | | | | | Switched from shared_ptr to intrusive_ptr for TxBuffer and DtxBuffer. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1536752 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5139: Add unit test for deadlock caused by blocking HA commit.Alan Conway2013-10-292-4/+24
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1536751 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5260: Significant tidy up of cmake buildAndrew Stitcher2013-10-284-36/+43
| | | | | | | | | | | | | | | | | | | | | * Move to cmake 2.6 as minimum required version (2.4 is extremely long in the tooth now) * Add control over building individual language bindings * Make settings you don't usually want to change advanced so they are hidden by default * Changed to a uniform naming scheme for options: ** Options controlling what to build are all BUILD_ ** Options controlling features of he build are ENABLE_ ** Options controlling internal aspects of the qpid runtime are QPID_ * Respect the BUILD_TESTING option so that we won't build the tests unless it is set (it is by default) * If we don't find the boost_unit_test_framework then don't fail, just don't build the unit tests (this is motivated by one of the Apache Jenkins ubuntu builders which has this set up) * Tidied up some of the detection of external dependencies to make it more idiomatic cmake (but there is more to do here) git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1536329 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4927: paged queue tests take too long under valgrind, so run them ↵Gordon Sim2013-10-252-8/+15
| | | | | | separately git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1535750 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4927: Get cmake testing working with valgrindAndrew Stitcher2013-10-246-230/+104
| | | | | | [also remove unused files] git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1535398 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4265: fix broken windows buildGordon Sim2013-10-241-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1535389 13f79535-47bb-0310-9956-ffa450edef68