summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/cluster
Commit message (Collapse)AuthorAgeFilesLines
* Added cluster option --cluster-size.Alan Conway2009-11-185-14/+13
| | | | | | | | --cluster-size=N means that during start-up the cluster waits to have N members before accepting any clients. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@881839 13f79535-47bb-0310-9956-ffa450edef68
* Added missing #include <algorithm>Alan Conway2009-11-171-0/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@881486 13f79535-47bb-0310-9956-ffa450edef68
* Integrated InitialStatusMap into cluster code.Alan Conway2009-11-1712-134/+261
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@881423 13f79535-47bb-0310-9956-ffa450edef68
* cluster::InitialStatusMap and unit tests, support for improved cluster join ↵Alan Conway2009-11-177-14/+207
| | | | | | protocol. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@881420 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1899: Applied patch from Ken Giusti to tie in SASL enctryption to the ↵Gordon Sim2009-11-095-20/+43
| | | | | | handling of the --require-encrypted option git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@834108 13f79535-47bb-0310-9956-ffa450edef68
* QPID-2191: Fix browsing behaviour where messages may have been released out ↵Gordon Sim2009-11-092-0/+2
| | | | | | of order git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@834026 13f79535-47bb-0310-9956-ffa450edef68
* Reduce redundancy in cluster log output.Alan Conway2009-10-281-5/+1
| | | | | | | start_cluster: Use PID in cluster name to avoid name clashes with multiple tests. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@830696 13f79535-47bb-0310-9956-ffa450edef68
* Fix problems with sessions going out of scope and session numbers wrapping ↵Alan Conway2009-10-211-0/+1
| | | | | | | | | | | | | around. Fixes QPID-1789: sessions that go out of scope without being detached will detach themselves. Also fixes several issues that arise when the session numbers wraps around and start re-using old numbers. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@828108 13f79535-47bb-0310-9956-ffa450edef68
* Change CPG initialization log message to notice level.Alan Conway2009-10-191-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@826695 13f79535-47bb-0310-9956-ffa450edef68
* Cluster shuts down broker via SignalHandler to fix memory errors on exit.Alan Conway2009-10-081-1/+2
| | | | | | | | The SignalHandler holds a global reference to the broker which needs to be reset otherwise there are problems when the broker by a global destructor. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@823258 13f79535-47bb-0310-9956-ffa450edef68
* Minor improvements to cluster logging.Alan Conway2009-10-052-13/+18
| | | | | | Include the original error message in critical log messages. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@821948 13f79535-47bb-0310-9956-ffa450edef68
* Fixed: cluster udpate did not presever deliver-properties.exchange on messages.Alan Conway2009-10-052-2/+9
| | | | | | | | Also minor improvements: - Improved debug logging for consumers. - Cluster tests scripts work with latest corosync: don't check/set ais group. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@821830 13f79535-47bb-0310-9956-ffa450edef68
* Removed LatencyTracker from cluster.Alan Conway2009-10-015-42/+5
| | | | | | | Turned out not to be very useful. Better to use profiling tools like systemtap. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@820796 13f79535-47bb-0310-9956-ffa450edef68
* Set cluster version number from SVN revision.Alan Conway2009-10-011-2/+6
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@820788 13f79535-47bb-0310-9956-ffa450edef68
* Minor fix from r.814021Kim van der Riet2009-09-111-3/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@814043 13f79535-47bb-0310-9956-ffa450edef68
* Fix incorrect test for quorum status.Alan Conway2009-09-111-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@814021 13f79535-47bb-0310-9956-ffa450edef68
* Fix QPID-2086, hang of federated_cluster_test_with_node_failure.Alan Conway2009-09-091-1/+9
| | | | | | | cluster::Connection did not give read credit if there was an exception processing a frame. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@813100 13f79535-47bb-0310-9956-ffa450edef68
* QPID-2058: Add a flag to the version of SessionImpl::send() that takes a ↵Gordon Sim2009-08-191-1/+1
| | | | | | FrameSet as content. This flag indicates whether the frames in that frame set are valid for sending over the connection or whether they should be reframed. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@805904 13f79535-47bb-0310-9956-ffa450edef68
* Added documentation to watchdog plugin.Alan Conway2009-08-142-0/+25
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@804263 13f79535-47bb-0310-9956-ffa450edef68
* Revert "Batch multiple events into a single CPG multicast."Alan Conway2009-08-144-28/+17
| | | | | | | This reverts svn revision 803713: Batch multiple events into a single CPG multicast. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@804206 13f79535-47bb-0310-9956-ffa450edef68
* Batch multiple events into a single CPG multicast.Alan Conway2009-08-124-17/+28
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@803713 13f79535-47bb-0310-9956-ffa450edef68
* Watchdog feature to remove unresponsive cluster nodes.Alan Conway2009-08-102-0/+174
| | | | | | | | | | | | | | | | | In some intstances (e.g. while resolving an error) it's possible for a hung process to hang the entire cluster as they wait for its response. The cluster can handle terminated processes but hung processes present a problem. If the watchdog plugin is loaded and --watchdog-interval is set then the broker forks a child process that runs a very simple watchdog program, and starts a timer in the broker process to signal the watchdog every interval/2 seconds. The watchdog kills its parent if it does not receive a signal for interval seconds. This allows a stuck broker to be removed from the cluster so other cluster members can continue. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@802927 13f79535-47bb-0310-9956-ffa450edef68
* Fix cman integration to exit immediately on loss of quorum.Alan Conway2009-08-0612-36/+109
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@801740 13f79535-47bb-0310-9956-ffa450edef68
* Fixes for cluster code to compile with new stricter corosync header filesAndrew Stitcher2009-08-044-16/+56
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@800921 13f79535-47bb-0310-9956-ffa450edef68
* Fix race condition in cluster error handling.Alan Conway2009-07-318-52/+75
| | | | | | | | | If different errors occured almost simultaneously on two different nodes in a cluster, there was a race condition that could cause the cluster to hang. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@799687 13f79535-47bb-0310-9956-ffa450edef68
* Set protocol versions correctly in cluster code.Alan Conway2009-07-302-8/+12
| | | | | | | | | Cluster code was broken by a recent checkin to validate protocol versions. The cluster was not correctly setting the version on both sides of a connection. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@799401 13f79535-47bb-0310-9956-ffa450edef68
* Change all broker users of broker::Timer to use sys::TimerAndrew Stitcher2009-07-302-7/+10
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@799273 13f79535-47bb-0310-9956-ffa450edef68
* Provide more informative cluster logging at notice levelAlan Conway2009-07-295-28/+28
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@799124 13f79535-47bb-0310-9956-ffa450edef68
* Remove some unnecessary promotions of char* to std::string.Alan Conway2009-07-212-17/+18
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@796333 13f79535-47bb-0310-9956-ffa450edef68
* Add "[shadow]" prefix to the log-ID for shadow and catch-up connections, to ↵Alan Conway2009-07-171-6/+12
| | | | | | make them easy to identify. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@795223 13f79535-47bb-0310-9956-ffa450edef68
* Update queue listeners in the correct order.Alan Conway2009-07-167-46/+200
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@794736 13f79535-47bb-0310-9956-ffa450edef68
* Minor cluster optimizations.Alan Conway2009-07-143-16/+11
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@793917 13f79535-47bb-0310-9956-ffa450edef68
* Add directory to #includeAlan Conway2009-07-1434-88/+88
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@793909 13f79535-47bb-0310-9956-ffa450edef68
* Reverted checkins 793119, 793120, 793121, 793122 because of problems with ↵Kim van der Riet2009-07-132-10/+7
| | | | | | heartbeats and the store tests. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@793602 13f79535-47bb-0310-9956-ffa450edef68
* Change all broker users of broker::Timer to use sys::TimerAndrew Stitcher2009-07-102-7/+10
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@793121 13f79535-47bb-0310-9956-ffa450edef68
* Fix cluster handling of multiple errors.Alan Conway2009-07-103-19/+37
| | | | | | | | | | If an error occured while there were frames on the error queue from a previous error, the enqueued frames were not being processed for the new error, which could lead to error-check or config-change frames being missed. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@792991 13f79535-47bb-0310-9956-ffa450edef68
* Minor improvement to cluster logging.Alan Conway2009-07-091-3/+6
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@792677 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1974: Fixes (and tests) for updating lvq state to new cluster members.Gordon Sim2009-07-081-0/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@792103 13f79535-47bb-0310-9956-ffa450edef68
* Fix members joining cluster while cluster is handling client errors.Alan Conway2009-07-018-38/+80
| | | | | | | Completes the previous incomplete fix in r790163. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@790397 13f79535-47bb-0310-9956-ffa450edef68
* Fix members joining cluster while cluster is handling client errors.Alan Conway2009-07-0110-33/+229
| | | | | | | | | | | Previously cluster members could abort if a new member joins while existing members are handling a client error. Now if an update offer arrives while an error is in progress, the offering broker retracts the offer and the newcomer must try again. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@790163 13f79535-47bb-0310-9956-ffa450edef68
* Fix cluster race condition with connections closed by broker while in use.Alan Conway2009-06-307-36/+45
| | | | | | | | | | | | | | | | If a client is using a connection that is closed at the broker end because of an error, there is a race condition that allows the connection to be incorrectly re-created on replica brokers which can cause those brokers to exit with an error that does not occur on the directly connected broker. The fix: explicitly announce new connections, shadow connections are no longer implicitly created on first use. Make error-check a cluster control so it can be handled independently of the lifecycle of the connection where an error initially occured. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@789947 13f79535-47bb-0310-9956-ffa450edef68
* Make error-check a cluster-connection control rather than a cluster control.Alan Conway2009-06-186-23/+27
| | | | | | | | | Fixes bug if an error occurs during update. As cluster controls, error-checks were being processed out of sequence with the connection data they referred to. Making them connection controls ensures they are processed in the proper order. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@786294 13f79535-47bb-0310-9956-ffa450edef68
* Correct order of args to memset(); fixes QPID-1787Stephen D. Huston2009-06-181-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@786148 13f79535-47bb-0310-9956-ffa450edef68
* Handle invalid AMPQ data to a cluster by closing the offending connection.Alan Conway2009-06-173-3/+19
| | | | | | | Prior to this fix, invalid data shut down the whole cluster. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@785788 13f79535-47bb-0310-9956-ffa450edef68
* Performance improvements in AggregateOutput and SemanticState.Alan Conway2009-06-167-19/+55
| | | | | | | | | | | | | | Replaced AggregateOutput hierarchy with a flat list per connection holding only the OutputTasks that are potentially active. Tasks are droped from the list as soon as they return false, and added back when they may have output. Inlined frequently-used SequenceNumber functions. Replace std::list in QueueListeners with std::vector. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@785408 13f79535-47bb-0310-9956-ffa450edef68
* Add flag to broker Connection so that it knows if it is aAndrew Stitcher2009-06-111-0/+1
| | | | | | | local or shadow connection git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@783789 13f79535-47bb-0310-9956-ffa450edef68
* YA Fix to the cluster behaviour of the client heartbeatAndrew Stitcher2009-06-081-1/+3
| | | | | | | (non) detection code git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@782715 13f79535-47bb-0310-9956-ffa450edef68
* Fix of the previous client heartbeat changes:Andrew Stitcher2009-06-083-0/+7
| | | | | | | | | | - Changes to the cluster code were previously missed - It's neater and more correct to reset the traffic timeout for all connection traffic, not just traffic in a session git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@782696 13f79535-47bb-0310-9956-ffa450edef68
* Further fix to new cluster member state transfer to fix a case where unacked ↵Gordon Sim2009-06-053-1/+4
| | | | | | messages on ring policy queue cause inconsistencies in queue state between nodes. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@782075 13f79535-47bb-0310-9956-ffa450edef68
* Ensure that ring queue behaves as expected when replicated to newly joined ↵Gordon Sim2009-06-031-0/+1
| | | | | | | | | | cluster node. Altered queueDurabilityPropagationToNewbie test to not use in-process broker to fix error caused by linking change. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@781454 13f79535-47bb-0310-9956-ffa450edef68