summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/cluster
Commit message (Collapse)AuthorAgeFilesLines
* Code cleanup Ted Ross2010-04-232-48/+0
| | | | | | | | | | - Removed IdAllocator (it's no longer needed) - Cleaned up the calls to ManagementAgent::addObject to handle durable objects - Removed the deferred call to addObject for durable objects - Removed unneeded calls to self._checkClosed() in qmf.console.Agent git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@937516 13f79535-47bb-0310-9956-ffa450edef68
* Cluster management improvements:Ted Ross2010-04-231-8/+1
| | | | | | | | | | | 1) Enable all management methods via QMFv2 for clusters 2) Disable all management methods via QMFv1 for clusters 3) The broker-resident management agent can handle both v1 and v2 method calls 4) qmf.console (Python) now works with new and old brokers by detecting whether the broker can handle v2 commands git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@937472 13f79535-47bb-0310-9956-ffa450edef68
* QPID-2527: Remove Thread::id member as its uses are better implemented by ↵Andrew Stitcher2010-04-211-3/+3
| | | | | | | | comparison operators. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@936537 13f79535-47bb-0310-9956-ffa450edef68
* Tidy up unnecessary includes in ConnectionSettings and fix consequencesGordon Sim2010-04-141-0/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@933971 13f79535-47bb-0310-9956-ffa450edef68
* Update cluster store status with a single atomic write() operation.Alan Conway2010-04-013-78/+78
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@930055 13f79535-47bb-0310-9956-ffa450edef68
* Cluster: remove un-necessary code for config-seq.Alan Conway2010-03-317-43/+13
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@929616 13f79535-47bb-0310-9956-ffa450edef68
* Joining a cluster: don't push an empty store.Alan Conway2010-03-301-0/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@929278 13f79535-47bb-0310-9956-ffa450edef68
* Fix hanging failover_soak test.Alan Conway2010-03-302-4/+3
| | | | | | | | | Explictly turn off PollableQueue bypass mode during initialize. Implicitly turning it off in PollableQueue::start() led to incorrectly turning off bypass in a PRE_INIT client when an offer was processed. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@929276 13f79535-47bb-0310-9956-ffa450edef68
* Cluster logging improvements: log config changes in the deliver thread.Alan Conway2010-03-304-38/+50
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@929274 13f79535-47bb-0310-9956-ffa450edef68
* Remove dead PeriodicTimer code.Alan Conway2010-03-302-156/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@929273 13f79535-47bb-0310-9956-ffa450edef68
* Raise ClusterTimer lateness threshold to reduce noisy warnings.Alan Conway2010-03-292-1/+4
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@928779 13f79535-47bb-0310-9956-ffa450edef68
* Fix "Ignoring frame while closing connection" warnings in a cluster broker ↵Alan Conway2010-03-251-1/+4
| | | | | | giving an update. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@927385 13f79535-47bb-0310-9956-ffa450edef68
* More generous overrun threshold for cluster timer to avoid excessive warnings.Alan Conway2010-03-251-1/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@927383 13f79535-47bb-0310-9956-ffa450edef68
* Work-around for race condition in the IO layer.Alan Conway2010-03-151-0/+6
| | | | | | | | | | | | Added a 100ms sleep in UpdateClient between calling Connection::close() and destroying the Connection object. This appears to work around the race condition described in https://bugzilla.redhat.com/show_bug.cgi?id=568831. which was causing brokers to seg fault sporadically at the end of giving an update. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@923414 13f79535-47bb-0310-9956-ffa450edef68
* New cluster member pushes store when joining an active cluster.Alan Conway2010-03-128-63/+178
| | | | | | | | | | | | | | | | | | | Previously a broker with a clean store would not be able to join an active cluster because the shtudown-id did not match. This commit ensures that when a broker joins an active cluster, it always pushes its store regardless of status. Clean/dirty status is only compared when forming an initial cluster. This change required splitting initialization into two phases: PRE_INIT: occurs in the Cluster ctor during early-initialize. This phase determines whether or not to push the store. INIT: occurs after Cluster::initialize and does the remaining initialization chores. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@922412 13f79535-47bb-0310-9956-ffa450edef68
* QPID-2436: Fix cluster update of remote agents.Alan Conway2010-03-083-7/+16
| | | | | | | | | The v2key of cluster agents was not being passed as part of a cluster update. This meant they were not being associated with the correct shadow connections on the updatee. This caused inconsistencies that shut down the new broker. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@920414 13f79535-47bb-0310-9956-ffa450edef68
* Minor cleanup: removed unused parameter of initial-status in cluster.xml.Alan Conway2010-03-052-6/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@919662 13f79535-47bb-0310-9956-ffa450edef68
* Don't generate debug snapshot messages unless debug logging enabled.Alan Conway2010-03-052-9/+8
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@919523 13f79535-47bb-0310-9956-ffa450edef68
* QPID-2412: Support for EXTERNAL mechanism on client-authenticated SSL ↵Gordon Sim2010-03-055-28/+39
| | | | | | | | | | | | connections. On SSL connection where the clients certificate is authenticated (requires the --ssl-require-client-authentication option at present), the clients identity will be taken from that certificate (it will be the CN with any DCs present appended as the domain, e.g. CN=bob,DC=acme,DC=com would result in an identity of bob@acme.com). This will enable the EXTERNAL mechanism when cyrus sasl is in use. The client can still negotiate their desired mechanism. There is a new option on the ssl module (--ssl-sasl-no-dict) that allows the options on ssl connections to be restricted to those that are not vulnerable to dictionary attacks (EXTERNAL being the primary example). git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@919487 13f79535-47bb-0310-9956-ffa450edef68
* Amended cluster error message for decoding failures.Alan Conway2010-03-031-1/+1
| | | | | | | | New message says "Error decoding events, may indicate a broker version mismatch" since version mismatch is the most likely causes of a decoding error. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@918679 13f79535-47bb-0310-9956-ffa450edef68
* Fix: decoding error causes cluster broker to exit.Alan Conway2010-03-011-4/+16
| | | | | | | | | | An error decoding a connection was causing the broker::Connection object to be deleted in the connection IO thread rather than the cluster deliver thread, causing an exit with "critical Modified cluster state outside of cluster context" git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@917734 13f79535-47bb-0310-9956-ffa450edef68
* Fix cluster abort on shutdown in ClusterTimer::fire.Alan Conway2010-02-263-2/+7
| | | | | | | | The cluster destructor was not deleting the ClusterTimer set on the broker, so this timer had a dangling pointer to the cluster. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@916751 13f79535-47bb-0310-9956-ffa450edef68
* Last member of a cluster always has clean store.Alan Conway2010-02-253-3/+15
| | | | | | | | | | When a cluster is reduced to a single broker, it marks its store as clean regardless of how it is shut down. If we're down to a single member we know we want to use its store to recover as there are no others. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@916475 13f79535-47bb-0310-9956-ffa450edef68
* Removed unecessary include of Msg.h in Exception.hAndrew Stitcher2010-02-251-0/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@916453 13f79535-47bb-0310-9956-ffa450edef68
* Consistent connection names across a cluster.Alan Conway2010-02-055-31/+67
| | | | | | | | | - use the same host:port for connections and their shadows. - add shadow property to managment connection to identify shadows. - updated qpid-stat and qpid-cluster to filter on shadow property. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@907123 13f79535-47bb-0310-9956-ffa450edef68
* Synchronize management agent lists during cluster update.Alan Conway2010-02-055-37/+59
| | | | | | | | | - replicate management agent lists during cluster update. - suppress management agent output during update. - on join all members force full output at next periodic processing. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@907030 13f79535-47bb-0310-9956-ffa450edef68
* Fix cluster bug introduced in r905674, incorrect frame-sequence count.Alan Conway2010-02-021-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@905794 13f79535-47bb-0310-9956-ffa450edef68
* QPID-2384: Fix for problem of cluster nodes recovering from both cluster and ↵Kim van der Riet2010-02-021-1/+3
| | | | | | store when --no-data-dir and --store-dir are in use together. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@905680 13f79535-47bb-0310-9956-ffa450edef68
* Cluster: fix update of failover exchange.Alan Conway2010-02-023-5/+12
| | | | | | | During update the cluster was sending an extra update to the failover exchange. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@905676 13f79535-47bb-0310-9956-ffa450edef68
* Cluster: debug snapshots of queue depth at broker join, help find ↵Alan Conway2010-02-024-10/+39
| | | | | | inconsistencies. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@905674 13f79535-47bb-0310-9956-ffa450edef68
* Replace PeriodicTimer with ClusterTimer, which inherits from Timer.Alan Conway2010-01-294-23/+207
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@904656 13f79535-47bb-0310-9956-ffa450edef68
* Change the heuristic used to alter the send estimate up and down.Michael Goulish2010-01-291-2/+2
| | | | | | | | Especially, change the starting estimate to be much higher than 1 message. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@904588 13f79535-47bb-0310-9956-ffa450edef68
* Fixed missing ManagementAgent test, causing core dumps in cluster with ↵Alan Conway2010-01-291-8/+9
| | | | | | --mgmt-enable=no. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@904515 13f79535-47bb-0310-9956-ffa450edef68
* QPID-2357 Broker boot sequence doesn't synchronize when clustered - patch ↵Alan Conway2010-01-284-0/+44
| | | | | | from John Dunning git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@904270 13f79535-47bb-0310-9956-ffa450edef68
* Fixed cluster error "Not enough for multicast header"Alan Conway2010-01-281-8/+5
| | | | | | | | Fixed incorrect test of message size. Added assertions. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@904232 13f79535-47bb-0310-9956-ffa450edef68
* Fix for QPID-2373 - Durable exchange state not replicated to broker joining ↵Kim van der Riet2010-01-281-0/+3
| | | | | | cluster git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@904154 13f79535-47bb-0310-9956-ffa450edef68
* QPID_2634 Management updates in timer create inconsistencies in a cluster.Alan Conway2010-01-273-12/+21
| | | | | | | | | Cluster plugin provides a PeriodicTimer implementation to the broker which executes tasks in the cluster dispatch thread simultaneously across the cluster. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@903869 13f79535-47bb-0310-9956-ffa450edef68
* Cluster implementation of PeriodicTimer.Alan Conway2010-01-274-6/+171
| | | | | | | | | The cluster implementation multicast periodic-timer controls and executes the task when those controls are delivered, which is in the cluster delivery thread context and so consistent across the cluster. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@903867 13f79535-47bb-0310-9956-ffa450edef68
* In clustered broker: move construction of broker::Connections to the cluster ↵Alan Conway2010-01-273-57/+101
| | | | | | | | | | dispatch thread. Constructing a connection can involve sending management information so needs to be in the cluster dispatch context. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@903864 13f79535-47bb-0310-9956-ffa450edef68
* Fix cluster elder calculation to ensure unique elder.Alan Conway2010-01-277-13/+46
| | | | | | | | Race condition in the previous algorithm allowed several cluster members to consider themselves the elder. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@903826 13f79535-47bb-0310-9956-ffa450edef68
* Cluster-safe assertions.Alan Conway2010-01-201-0/+6
| | | | | | | | | Assert that replicated data structures are modified in a cluster-safe context - in cluster delivery thread or during update. Assertions added to Queue.cpp and SemanticState.cpp. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@901282 13f79535-47bb-0310-9956-ffa450edef68
* Removed dead code - cluster::Connection::left()Alan Conway2010-01-192-9/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@900860 13f79535-47bb-0310-9956-ffa450edef68
* Removed dead code: OutputTask::hasOutput and Queue::checkForMessages.Alan Conway2010-01-142-2/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@899356 13f79535-47bb-0310-9956-ffa450edef68
* Fix broker crash "confirmed N but only sent M" with managed agents running.Alan Conway2010-01-114-2/+24
| | | | | | | | | | | | | | The broker's ManagementAgent caches schemas from managed agents. This cache was not being replicated to new cluster members. If an agent such as sesame was running and connected to a newly-joined broker, that broker could send schema request messages which were not sent by other brokers that had the schema in cache. This resulted in the other brokers exiting with a "confirmed N but only sent M" message. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@897955 13f79535-47bb-0310-9956-ffa450edef68
* Add cluster watchdog plugin to cmake build.Alan Conway2010-01-071-1/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@896959 13f79535-47bb-0310-9956-ffa450edef68
* Make cluster::StoreStatus::load/save no-ops if broker has no data-dir.Alan Conway2010-01-061-0/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@896662 13f79535-47bb-0310-9956-ffa450edef68
* Fix uninitialized read error in cluster::StoreStatus.Alan Conway2010-01-061-7/+22
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@896617 13f79535-47bb-0310-9956-ffa450edef68
* Revert "Make cluster update work out of the box without special ↵Alan Conway2010-01-062-4/+4
| | | | | | | | | authentication options." This reverts revision 885870 git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@896541 13f79535-47bb-0310-9956-ffa450edef68
* Added config-seq counter to track config changes since cluster init.Alan Conway2010-01-069-54/+108
| | | | | | | | Config-seq is recorded persitently to help identify best store when recovering from total failure. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@896538 13f79535-47bb-0310-9956-ffa450edef68
* Exception handling for URL parsing in cluster.Alan Conway2010-01-062-8/+16
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@896537 13f79535-47bb-0310-9956-ffa450edef68