summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/cluster
Commit message (Collapse)AuthorAgeFilesLines
* 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
* Don't hold up broker initialization for cluster initialization.Alan Conway2010-01-063-42/+11
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@896536 13f79535-47bb-0310-9956-ffa450edef68
* QPID-2296: Cluster errors when using acquire-mode-not-acquiredAlan Conway2009-12-223-3/+5
| | | | | | | Replicate consumer's queue position to new cluster nodes. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@893175 13f79535-47bb-0310-9956-ffa450edef68
* QPID-2282: test_watchdog failing due to incorrect use of env. varsAlan Conway2009-12-161-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@891395 13f79535-47bb-0310-9956-ffa450edef68
* QPID-2266: error sending update: Enqueue capacity threshold exceededAlan Conway2009-12-115-8/+57
| | | | | | | | | Fix for the problem with a test to verify that messages going to the store have the same headers and content-size for an updatee or a broker that receives the publish directly. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@889813 13f79535-47bb-0310-9956-ffa450edef68