summaryrefslogtreecommitdiff
path: root/qpid/cpp/src/tests/brokertest.py
Commit message (Collapse)AuthorAgeFilesLines
* QPID-7207: remove cpp and python subdirs from svn trunk, they have migrated ↵Robert Gemmell2016-07-051-739/+0
| | | | | | to their own git repositories git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1751566 13f79535-47bb-0310-9956-ffa450edef68
* QPID-7281: Various fixes for the tests on windowsJustin Ross2016-06-011-1/+0
| | | | | | | | | | - Adjust environment script for windows paths - Pythonify the test runner for the windows store tests - Run the HA tests only on posix systems - Remove a finicky assertion in brokertest.py git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1746375 13f79535-47bb-0310-9956-ffa450edef68
* QPID-7207: Create independent cpp and python subtrees, with content from ↵Justin Ross2016-04-211-19/+7
| | | | | | tools and extras git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1740289 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4710: adjust version checking used by new tx interop tests so as not to ↵Gordon Sim2015-03-041-3/+16
| | | | | | fail existing tests when either ptoron python lib is not on path or is 0.7 or earlier git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1664144 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4710: [AMQP 1.0] Support for transactions in qpid::messaging C++ client.Alan Conway2015-02-271-9/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implements the "transactional retire and settle immediately" option for transactions as specified in AMQP 1.0 in the qpid::messaging C++ client. NOTE: Transactions over AMQP 1.0 require proton 0.9 or greater. With older versions, attempting a transactions over AMQP 1.0 will raise a link-detached exception "Node not found: tx-transaction" 1. Added descriptor list to Variant with support in Encoder and PnData. Required to support transactions, need to be able to create described lists. Variant changes are source and binary compatible. A Variant now has a Variant::List of descripors which can be numeric or string. Nested descriptors are implemented by putting multiple descriptors in the list. Other minor changes: - Variant refactor: don't delete impl on every assignment. - Add Variant constructors that take a string encoding. (new constructors, not defaulted arguments, so the change is binary and source compatible.) - Growable buffer support for Encoder. - Printing described Variant prints descriptors in form @descriptor value 2. Added transaction support to AMQP 1.0 client code Added messaging/amqp/Transaction.h,cpp: transaction logic - communicate with coordinator, send declare/dischange messages. - add tx state info to transfers and acknowledgements. - Sync session after discharge. - A transactional session automatically acks any message retrieved by fetch/get to bring them into the transaction. This is consistent the 0-10 client. Minor fixes to existing client code: - Fix use of pn_drain API in C++ client to work with C++ and Java brokers. - Make amqp::Exception derive from qpid::Exception 3. Fixes to existing broker code: - Incoming.cpp fix: start async completion before processing message. - Delay accept of dischage message till commit is complete. - newSession - handle failover during session creation. 4. Added tests interop_tests.py: transaction tests that can run against an external broker, see comments. ha_tests.py: Enable transaction tests over AMQP 1.0. Minor test fixes: - brokertest.py don't set default logging if QPID_LOG env vars set. - brokertest.py Pass kwargs to broker() create function. - qpid-receive: capacity should never be larger than message count. - Accept user:pass as well as user/pass in Url. - brokertest.py: Always do a ready() check on all brokers. If proton < 0.9 is used, transaction tests will be skipped or will downgrade to the amqp0-10 protocol with a printed warning. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1662743 13f79535-47bb-0310-9956-ffa450edef68
* QPID-6414: Skip HA tests if qpid-ha or qpid-config tools are not available.Alan Conway2015-02-251-1/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1662275 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Use absolute path for store directory in brokertest.pyAlan Conway2014-11-271-1/+1
| | | | | | Recent store changes broke the use of a relative directory as data-dir. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1642246 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: brokertest.py: don't use AMQP 1.0 if not available, ignore ↵Alan Conway2014-08-281-4/+5
| | | | | | connection close teardown errors. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1621212 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Clean up test_store.cpp async functionality.Alan Conway2014-08-221-1/+1
| | | | | | Clean up test_store.cpp to allow control over async completion of messsages. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1619814 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5966: HA mixing tx enqueue and non-tx dequeue leaves extra messages on ↵Alan Conway2014-08-081-6/+11
| | | | | | | | | | | | | | | | | | | | | backup. There were several problems: 1. Positions of transactionally enqueued messages not known to QueueReplicator, so not dequeued on backup if dequeued outside a TX on primary. 2. Race condition if tx created immediately after queue could cause duplication of TX message. 3. Replication IDs were not being set during recovery from store (regression, store change?) Fix: 1. Update positions QueueReplicator positions via QueueObserver::enqueued to see all enqueues. 2. Check for duplicate replication-ids on backup in QueueReplicator::route. 3. Set replication-id in publish() if not already set in record(). git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1616704 13f79535-47bb-0310-9956-ffa450edef68
* [no JIRA]: brokertest to set connection option 'protocol' only for SWIG ↵Pavel Moravec2014-06-261-2/+4
| | | | | | client on AMQP1.0 git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1605703 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: HA fix hanging ha_tests.test_failover_send_receive on RHEL5Alan Conway2014-05-011-24/+22
| | | | | | | | | | | | | The test was hanging because of a python construct not available in 2.4. It was causing an exception in a strange place because this bit of code was imported at runtime, and that was hanging the test. Fixed and did some cleanup to avoid such mysterious hangs in future: - Fixed qpidtoollibs/config.py to work with python 2.4. - Import qpid-ha script at import time rather than runtime. - Fix Popen.teardown logic to avoid hanging if a process can't be killed. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1591794 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5720: HA exception raised by the store for durable transactionsAlan Conway2014-04-231-0/+3
| | | | | | | | | | | | | | | Running qpid-txtest against a HA cluster was raising this exception: async_dequeue() failed: jexception 0x0b02 wmgr::dequeue_check() threw JERR_MAP_LOCKED: Record ID locked by a pending transaction. This is actually a test bug. In a cluster a transaction commit takes longer to complete because of co-ordinating with backups, the test was not waiting for the completion of commit command before proceeding. Adding a sync() in the test solves the problem. Note this test uses the old obsolete C++ API. Applications written using the supported messaging API are not affected by this. This can be verified using the qpid-send and qpid-receive clients with the --tx option (there is already an automated test for this in ha_tests.py.) git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1589520 13f79535-47bb-0310-9956-ffa450edef68
* Author: Alan Conway <aconway@redhat.com>Alan Conway2014-04-081-2/+3
| | | | | | | --- log message follows this QPID-5560: Remove use of python if expression, not available in older python (2.4) git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1585755 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5560: HA tests do not use AMQP 1.0Alan Conway2014-04-071-43/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The HA tests were using only AMQP 0-10. Modified the tests to use AMQP 1.0 if available (still use 0-10 if 1.0 is not available) Fixed bugs uncovered both in the tests and in the AMQP 1.0 implementation. Summary of changes: - brokertest.py: configurable support for of swig vs. native and amqp0-10 vs. 1.0 - default to swig+amqp1.0 if swig is available, native+amqp0-10 otherwise - qpidtoollibs/broker.py: enable use of swig client with BrokerAgent - Swig python client: - support for passing client_properties/properties. - expose AddressHelper pn_data read/write as PnData helper class - set sender/receiver capacity on creation - limited disposition support - rejected messages. - support for additional timeout parameters - expose messaging::Logger, allow log configuration to be set from python. - ha_tests.py: - bind, delete policies not supported by AMQP 1.0, switched to using BrokerAgent QMF. - pass protocol:amqp1.0 connection-option to c++ test clients (qpid-send, qpid-receive) - TX tests forsce use of 0-10 protocol (but still with Swig client if enabled.) - Broker fixes: - Queue::Settings::isTemporary was set in the 0-10 SessionAdapter, moved to Broker::createQueue. - broker::amqp::Session was always setting an exclusive owner in createQueue git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1585588 13f79535-47bb-0310-9956-ffa450edef68
* Author: Alan Conway <aconway@redhat.com>Alan Conway2014-02-061-1/+1
| | | | | | | --- log message follows this NO-JIRA: Remove use of python built-in 'next', not available before python 2.6. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1565382 13f79535-47bb-0310-9956-ffa450edef68
* QPID-5513: HA backup fails if number of replicated queues exceeds number of ↵Alan Conway2014-01-241-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | 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: 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
* QPID-5275: HA transactions failing in qpid-cluster-benchmarkAlan Conway2013-11-121-3/+19
| | | | | | | | | | | | | | | | | | 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-5115: AMQP 1.0 client support built in to qpidmessaging for all platformsCharles E. Rolke2013-10-041-1/+0
| | | | | | | | | | | This commit disposes of the amqpc library and moves the functions into the qpidmessaging library. Now any client that loads qpidmessaging gets amqp0-10 and amqp1.0 selectable through the connection protocol option. C++ brokers still must load the amqp library to enable 1.0 support. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1529235 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4944: HA fix failure of test_failover_send_receive on slow machines.Alan Conway2013-09-131-1/+1
| | | | | | | | | | At the end of this test, receivers read remaining messages on queues. Previously the test limited the max depth at 1024, but this was too high on some slower machines and caused a timeout. The test now limits the max depth to 50, which seems to work on a range of machines. There's no impact on the effectiveness of the test for failover. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1523094 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4944: HA re-enable test_failover_send_receiveAlan Conway2013-09-121-2/+2
| | | | | | | | | | | | | Appears to have been fixed at this point on trunk, not clear which checkins are responsible. Test ran for 48 hours with no failures. Other minor changes: - Enable test_failover_send_receive - Increase heartbeat interval. - Reduce capacity of senders in failover test to be more aggressive. - Use HaBrokerTest as test base git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1522711 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: HA minor fixes to test framework & comments.Alan Conway2013-09-041-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1520108 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4327: HA clean up transaction artifacts at end of TX.Alan Conway2013-08-301-0/+4
| | | | | | | | | | - Backups delete transactions on failover. - TxReplicator cancel subscriptions when transaction is finished. - TxReplicator rollback if destroyed prematurely. - Handle special case of no backups for a tx. - ha_tests.py: new and modified tests to cover the new functionality. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1518982 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4327: HA TX transactions: basic replication.Alan Conway2013-08-011-6/+9
| | | | | | | | | | | | | | | On primary a PrimaryTxObserver observes a transaction's TxBuffer and generates transaction events on a tx-replication-queue. On the backup a TxReplicator receives the events and constructs a TxBuffer equivalent to the one in the primary. Unfinished: - Primary does not wait for backups to prepare() before committing. - All connected backups are assumed to be in the transaction, there are race conditions around brokers joining/leavinv where this assumption is invalid. - Need more tests. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1509423 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4327: Added TransactionObserver interface.Alan Conway2013-08-011-2/+2
| | | | | | | | | | | Added TransactionObserver interface, called at each point in a transaction's lifecycle. Currently only a single observer can be associated with a transaction. Added startTx, startDtx to BrokerObserver so plugins can observe transactions starting and set a TransactionObserver. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1509421 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4327: Optimize brokertest.ready() to improve test runtimes.Alan Conway2013-08-011-22/+13
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1509418 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4944: HA Sporadic failure: test_failover_send_receiveAlan Conway2013-07-041-1/+2
| | | | | | | | | | | | | | | | | Test failing if run as: ha_tests.py -DDURATION=2 AssertionError: Stalled test0 waiting for 248, sent 1228 The problem was a missing call to notify() when a ReplicatingSubscription skipped a message. That resulted in very long (>1s) delays between skipped messages which caused the test to time out. Changes: - ReplicatingSubscription::deliver call notify() to keep consumer active. - Re-enable test_failover_send_receive. - Increase default credit for replicating subscription to match qpid-send. - Rename ReplicatingSubscription::unacked as unready, clearer meaning. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1499789 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4944: HA Sporadic failure - logging improvements used to investigate.Alan Conway2013-07-041-0/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1499788 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4931: Only allow broker to listen to a single address if "--port 0" ↵Andrew Stitcher2013-06-191-1/+1
| | | | | | | | | | | specified - If more than one address is specified or implied by the defaults the broker will log a warning - This is intended to avoid testing problems where the broker fails to connect to the port of subsequent listening addresses git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1494656 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Added connection timeout to python client, used in brokertests.Alan Conway2013-05-291-2/+2
| | | | | | | Added an optional timeout parameter to Connection.establish. Set a timeout of 5 seconds in brokertest.py to prevent hanging tests. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1487578 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4745: HA safe port allocation for brokers in HA tests.Alan Conway2013-05-151-8/+3
| | | | | | | | | | | | | | | | | | Many HA tests use --port=0 to start a broker on an available port, but then need to shutdown and restart the broker on the same port. This is not safe, on a busy system it is possible for another process to take the port between the time the broker is shut down and the time it is restarted. The solution is to do bind(0) and listen in the python test framework (class HaPort) and let the broker use the socket using qpidd --socket-fd. When the broker is shut down the port remains bound by the python process. When the broker is re-started it again is given access to the socket via --socket-fd. Other changes - move ha_store_tests into ha_tests. - add heartbeats to avoid stalling. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1482881 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4640: brokertest.py prints a message and skips tests if qmf.console not ↵Alan Conway2013-03-151-1/+4
| | | | | | | | | | available. Tests that use qmf.console will print a skip message if it is not available. For example: they may not be available when building from a distro rather than a checkout. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1457097 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4586: add ability to have qpidd establish outgoing connectionsGordon Sim2013-03-141-0/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1456621 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4514: Remove obsolete cluster code: brokertest.pyAlan Conway2013-01-031-85/+7
| | | | | | Clean up cluster obsolete code in brokertest.py. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1428634 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Fix race condition in brokertest.py test harness.Alan Conway2012-12-071-1/+3
| | | | | | | Fixed a race conndition that was causing false failures of the form "expected an error". git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1418417 13f79535-47bb-0310-9956-ffa450edef68
* Bug 860701 - QPID-4350: HA handle auto-delete queuesAlan Conway2012-10-111-2/+2
| | | | | | | Subscribed auto-delete queues are deleted by the backup. Timed auto-delete queues are deleted after the timeout. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1397243 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4325: HA Starting from persistent storeAlan Conway2012-09-251-2/+2
| | | | | | | | | | | When re-starting a persistent HA cluster, the broker that becomes primary should keep its store data while all the backup brokers should discard their store data and catch up from the primary. Backups cannot simply use their own stores because sequence numbers of stored messages will not match on all brokers. The backup erases individual queues and exchanges as the catch-up process gets to them. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1390123 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4223: HA Completion isn't sent when queue that has acquired but ↵Alan Conway2012-09-141-2/+2
| | | | | | | | | | | unacknowledged messages is deleted - Extended ha_test.py test_failover_send_receive to kill backup as well as primary - QueueRegistry::destroy was not calling observer. - Primary removes disconnected brokers backups and expectedBackups - Primary calls checkReady in all cases where broker is removed from expectedBackups git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1384882 13f79535-47bb-0310-9956-ffa450edef68
* QPID-4072: HA use backup messages in failover.Alan Conway2012-06-181-2/+3
| | | | | | | ReplicatingSubscription syncs the primary and backup queues, and does not re-send messages that are already on the backup. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1351481 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3603: Fix & clean up in HA code.Alan Conway2012-06-181-7/+7
| | | | | | | | | | - Fix fencepost error in getFirstSafe() - QueueGuard::attach completes messages before the ReplicatingSubscription postion - Fix minor test issues in brokertest.py and ha_test.py. - ReplicatingSubscription check for ready in acknowledge not dispatch. - HA test fix: retry wait_status retry on ConnectErrors, broker may not be up. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1351435 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3603: Minor cleanup and test improvements in HA code.Alan Conway2012-06-181-2/+2
| | | | | | | | | | - Enabled 10 queue failover test - Minor cleanup in types.h - Rewording, adding comments. - Detect and reject invalid replication values. - Cleaned up some unnecessary #includes git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1351434 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3603: HA bug fixes around transition to ready statusAlan Conway2012-06-121-1/+1
| | | | | | | | | | - Simplify QueueGuard::firstSafe calculation. - Fix error in setting initial queues - was not checking if replicated. - Send ready status to backups. Tests hang, deadlock in opened()->RemoteBackup on primary? - Fix deadlock in QueueGuard. - Don't start guards inside ConnectionObserver::opened. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1349547 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3603: HA bug fixes around ha::QueueGuardAlan Conway2012-06-121-1/+1
| | | | | | | | | | - Remove nested calls between QueueGuard::dequeued and ReplicatingSubscription - ReplicatingSubscription can't start ahead of QueueGuard::getReadyPosition() - Fix QueueGuard firstSafe calcultatoin - Replace DequeueRemover with DequeueScanner in ReplicatingSubscription - Removed bad assertions in ReplicatingSubscription and QueueGuard git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1349544 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3603: Introduced RemoteBackup to track backup status.Alan Conway2012-06-121-5/+3
| | | | | | | | | | | The primary creates RemoteBackup object for each connected or expected backup. On first being promoted, the new primary has a RemoteBackup for each of the known backups at the time of the failure. The RemoteBackup manages queue guards for its backup and tracks it's readiness. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1349540 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3603: Separate QueueGuard from ReplicatingSubscription.Alan Conway2012-06-121-1/+1
| | | | | | | | | | | | | QueueGuard: implements QueueObserver to delay completion of new messages. ReplicatingSubscription: Implements subscription, sends messages & events to backup. These were previously combined as one. QueueGuard is now separated out so that it can be created before the ReplicatingSubscription, in anticipation of an expected backup connecting. This is needed for 2 reasons: - new queues must be guarded until they are backuped up. - after a failover, all queues must be guarded until backups are ready. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1349538 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3603: Close replication link when a backup broker is promoted to primary.Alan Conway2012-05-281-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1343348 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3603: HA broker backup/primary ready checks.Alan Conway2012-05-151-8/+10
| | | | | | | | | | | | | | | | | - Introduce HA broker state machien - Inform backup queues when ready. - Incomplete implementation of backup ready check. - does not count correctly after a failover, see countUnready. - Existing replicator bridges updated out of sync with BrokerReplicator initialize. - Does not handle multi-messages responses. - Newly promoted HA primary waits for backups to be ready before accepting clients. - Uniform log prefixes for HA messages. - qpid-ha tests, call qpid-ha python code directly. - Move excluder from Backup to HaBroker, it is also used in PROMOTING. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1338889 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Fix assertion messages in brokertest.pyAlan Conway2012-04-181-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1327518 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Minor code clean-up in brokertest.py and ha_tests.py.Alan Conway2012-04-171-27/+32
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1327137 13f79535-47bb-0310-9956-ffa450edef68