summaryrefslogtreecommitdiff
path: root/qpid/cpp/src/qpid/cluster
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'visibility-hidden' into qpid-3163qpid-3163Alan Conway2011-07-282-25/+21
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/branches/qpid-3163@1151956 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3004: Get Clang to compile qpid c++Andrew Stitcher2011-05-092-1/+3
| | | | | | - Finish getting boost::intrusive_ptr working (may be compiler bug) git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1101181 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3004: Get Clang to compile qpid c++Andrew Stitcher2011-05-091-5/+0
| | | | | | - Removed unused code causing warnings git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1101179 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3004: Get Clang to compile qpid c++Andrew Stitcher2011-05-095-9/+9
| | | | | | | - Change class/struct declarations to be consistent with the definition to avoid warnings git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1101178 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3076: enable flow control for clustered broker configurations.Kenneth Anthony Giusti2011-04-285-1/+71
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1097432 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3202: Clustered brokers shut down with "unknown connection" error.Alan Conway2011-04-134-18/+27
| | | | | | | | | | | This error is an assertion recently introduced in r1091097, the bug has probably been there for a while. Two fixes: - Connections that close before they are announced no longer send a deliver-close. - Fixed race in OutputInterceptor that sent a deliver-do-output after deliver-close. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1091790 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3198: Clustered broker should exit on unknown connection.Alan Conway2011-04-111-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1091097 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Fix bug in Cluster::timerDrop - calling wrong function.Alan Conway2011-04-071-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1089953 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Refactor RefCountedBuffer to be simpler and more flexible.Alan Conway2011-03-152-8/+9
| | | | | | | | | | RefCountedBuffer::pointer is replaced by a separate class BufferRef. BufferRef is independent of RefCountedBuffer, it can be used to manage other reference-counted buffer classes e.g. to implement buffer pools. BufferRef also provides beginning and end of the buffer, not just beginning. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1081631 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3105: Alternate-Exchange configuration not communicated between nodes ↵Alan Conway2011-03-021-0/+4
| | | | | | in a cluster. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1076375 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: Remove misleading log messages in cluster/UpdateDataExchange.cppAlan Conway2011-03-012-11/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1076020 13f79535-47bb-0310-9956-ffa450edef68
* NO-JIRA: remove some dead code, rename internal method for clarityGordon Sim2011-02-282-8/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1075381 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3084: apply Alan's fix to allow io callbacks to run during a cluster ↵Kenneth Anthony Giusti2011-02-243-28/+39
| | | | | | update. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1074332 13f79535-47bb-0310-9956-ffa450edef68
* QPID-2935: merge producer flow control (C++ broker).Kenneth Anthony Giusti2011-02-193-45/+47
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1072356 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3002: Configurable threshold alerts for queuesGordon Sim2011-02-151-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1070913 13f79535-47bb-0310-9956-ffa450edef68
* QPID-529: Priority queue implementationGordon Sim2011-02-103-0/+14
| | | | | | | | | | QPID-2104: LVQ enhancement These both required some refactoring of the Queue class to allow cleaner implementation of different types of behaviour. The in-memory storage of messages is now abstracted out behind an interface specified by qpid::broker::Messages which qpid::broker::Queue uses. Different implementations of that are available for the standard FIFO queue, priority queues and LVQ (I have also separated out the 'legacy' implementation of LVQ from the new version driven by QPID-2104). git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1069322 13f79535-47bb-0310-9956-ffa450edef68
* Added design note comment to qpid/cpp/src/qpid/cluster/ClusterTimer.cppAlan Conway2011-02-091-1/+20
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1069029 13f79535-47bb-0310-9956-ffa450edef68
* QPID-3007: Don't hold on to consumer shared-pointers in ↵Alan Conway2011-02-012-5/+4
| | | | | | | | | | | | UpdateClient::consumerNumbering Holding shared pointers in UpdateClient::consumerNumbering can hold consumers in memory and delete them out of sync with other cluster members. Made it hold plain pointers instead since we don't actually need to ensure object liveness, we're just doing an address/number correspondence. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1066217 13f79535-47bb-0310-9956-ffa450edef68
* QPID-2982 Bug 669452 - Creating a route and using management tools can crash ↵Alan Conway2011-01-185-6/+63
| | | | | | | | | | | | cluster members. Cluster update did not include federation link and bridge objects. Fixed update to include them. Management linkUp and linkDown events were generated only on the broker receiving the link. Suppressed these events in a cluster. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1060568 13f79535-47bb-0310-9956-ffa450edef68
* QPID-2982: Fix discrepancy in management object and deleted object counts.Alan Conway2011-01-131-2/+1
| | | | | | | | | | | | | | | cluster_tests.test_management was showing discrepancy in management object and deleted object count after a new member update. In ManagementAgent.cpp, code to move deleted objects into pendingDeletedObjs was duplicated in 2 places. Moved duplicated code into a function moveDeletedObjectsLH() Call moveDeletedObjectsLH from clusterUpdate to correct discrepancy in object count around update. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1058664 13f79535-47bb-0310-9956-ffa450edef68
* QPID-2982: Improved cluster/management logging and automated test for log ↵Alan Conway2011-01-075-37/+54
| | | | | | | | | | | consistency. The cluster_tests.py test_management test is augmented to compare broker logs after the test completes. Any inconsistency in the logs causes the test to fail. This check is currently disabled as it is failing due to known issues. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1056378 13f79535-47bb-0310-9956-ffa450edef68
* Bug 662765 - Management broker ID should be the same for members of a cluster.Alan Conway2010-12-154-20/+24
| | | | | | | Replicate management UUID and name to members of a cluster. See https://bugzilla.redhat.com/show_bug.cgi?id=662765. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1049566 13f79535-47bb-0310-9956-ffa450edef68
* Defer update of managaement agent to end of update process.Alan Conway2010-12-085-45/+36
| | | | | | | | | | | Move updating of the management agent to the very end of the update process, after all objects used by the update process itself have been deleted. Before the fix deletions from the update process itself (deleting the qpid.cluster-update queue and its binding to the default exchange) were sporadically appearing as extra delete messages on the updatees management agent and causing inconsistency. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1043621 13f79535-47bb-0310-9956-ffa450edef68
* Modified cluster_tests causes broker shut down with invalid-argument error.Alan Conway2010-12-016-29/+221
| | | | | | | | | | Described in https://bugzilla.redhat.com/show_bug.cgi?id=655078. The management agent's deleted-object list was not being replicated to new members joining the cluster, so management generated fewer deleted object notifications on the newer member, causing it to fail with an invalid-argument error. The list is now being replicated correctly. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1041181 13f79535-47bb-0310-9956-ffa450edef68
* Enable cluster-safe assertions on transition to CATCHUPAlan Conway2010-12-011-2/+4
| | | | | | | | | Delaying until READY was causing multiple clientConnect management events to be raised, because broker::Connection::setUserId relies on sys::isCluster to avoid producing duplicate events with cluster::Connection::announce git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1041179 13f79535-47bb-0310-9956-ffa450edef68
* QPID-2956: cluster broker exits with "error deliveryRecord no update message."Alan Conway2010-11-222-9/+14
| | | | | | | | | The following sequence of events was causing a broker joining the cluster to shutdown: - a client acquires or browses a message with TTL set. - the message expires. - a new broker joins before the client has acknowledged the message. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1037763 13f79535-47bb-0310-9956-ffa450edef68
* QPID-2874 Clustered broker crashes in assertion in cluster/ExpiryPolicy.cppAlan Conway2010-11-182-11/+51
| | | | | | | | | | | | | | - Added missing lock to ExpiryPolicy - 1-N mapping for expiry ID to mapping when receiving an update. - Regression test. A fan-out message (sent to multiple queues e.g. by fanout or topic exchange) is a single message on multiple queues with a single expiry ID. During an update however each instance is sent as a separate message so we need to allow 1-N mapping of expiry ID to message during update. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1036589 13f79535-47bb-0310-9956-ffa450edef68
* cluster/Numbering.h: Removed unused and incorrect function contains()Alan Conway2010-11-171-2/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1036214 13f79535-47bb-0310-9956-ffa450edef68
* Moved new cluster design docs into cpp/design.Alan Conway2010-11-013-932/+0
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1029671 13f79535-47bb-0310-9956-ffa450edef68
* Updates to new cluster design docs.Alan Conway2010-11-012-108/+113
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1029670 13f79535-47bb-0310-9956-ffa450edef68
* Updates to new cluster design.Alan Conway2010-10-271-3/+6
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1028082 13f79535-47bb-0310-9956-ffa450edef68
* Revert experimental cluster code, too close to 0.8 release.Alan Conway2010-10-2714-903/+3
| | | | | | | | | Reverts revisions: r1023966 "Introduce broker::Cluster interface." r1024275 "Fix compile error: outline set/getCluster fucntions on Broker." r1027210 "New cluster: core framework and initial implementation of enqueue logic." git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1028055 13f79535-47bb-0310-9956-ffa450edef68
* Updates to new cluster design.Alan Conway2010-10-273-1/+19
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1028006 13f79535-47bb-0310-9956-ffa450edef68
* Add missing Apache licences to cluster files.Alan Conway2010-10-263-1/+53
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1027749 13f79535-47bb-0310-9956-ffa450edef68
* Updates to new cluster design docs regarding active-passive mode.Alan Conway2010-10-263-3/+14
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1027714 13f79535-47bb-0310-9956-ffa450edef68
* Initial design document on implementing active/passive clustering.Alan Conway2010-10-251-0/+39
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1027211 13f79535-47bb-0310-9956-ffa450edef68
* New cluster: core framework and initial implementation of enqueue logic.Alan Conway2010-10-2516-25/+920
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1027210 13f79535-47bb-0310-9956-ffa450edef68
* Introduce broker::Cluster interface.Alan Conway2010-10-182-0/+442
| | | | | | | | | See cpp/src/qpid/cluster/new-cluster-design.txt and new-cluster-plan.txt. qpid/cpp/src/tests/BrokerClusterCalls.cpp is a unit test that verifies the broker makes the expected calls on broker::Cluster in various situations. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1023966 13f79535-47bb-0310-9956-ffa450edef68
* Code cleanup in broker directory.Alan Conway2010-10-141-5/+5
| | | | | | | | - Removed un-necessary #includes for broker/Queue.h - Removed "using std::string" in header files. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1022679 13f79535-47bb-0310-9956-ffa450edef68
* Registers the amq.failover exchange in the management exchange.Jonathan Robie2010-10-083-11/+12
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1005908 13f79535-47bb-0310-9956-ffa450edef68
* Update new cluster design: no longer planning to use MessageStore interface.Alan Conway2010-10-071-36/+26
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1005472 13f79535-47bb-0310-9956-ffa450edef68
* new-cluster-design.txt: added note on async replication.Alan Conway2010-09-281-6/+21
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1002171 13f79535-47bb-0310-9956-ffa450edef68
* Update new-cluster-design.txt, clarifications & notes.Alan Conway2010-09-241-13/+19
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1001052 13f79535-47bb-0310-9956-ffa450edef68
* Update new-cluster-design.txt: improvements to new members joining cluster.Alan Conway2010-09-241-3/+82
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1001022 13f79535-47bb-0310-9956-ffa450edef68
* Design note on proposed new cluster design.Alan Conway2010-09-221-0/+277
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1000234 13f79535-47bb-0310-9956-ffa450edef68
* Break deadlock caused when ClusterTimer::drop is called concurrently with ↵Alan Conway2010-09-091-1/+0
| | | | | | Timer::add. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@995426 13f79535-47bb-0310-9956-ffa450edef68
* Give timer tasks a name for logging purposes.Alan Conway2010-08-262-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@989925 13f79535-47bb-0310-9956-ffa450edef68
* Check for and abort invalid catchup connections.Alan Conway2010-08-234-3/+14
| | | | | | | Detect attempt to make a catch-up connection while we are not expecting an update. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@988312 13f79535-47bb-0310-9956-ffa450edef68
* Fixed memory management error in cluster::Quorum causing problems with ↵Alan Conway2010-08-092-4/+5
| | | | | | | | | | --cluster-cman. Sometimes caused brokers using --cluster-cman to fail with a "no permission" or "bad file-descriptor" error. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@983786 13f79535-47bb-0310-9956-ffa450edef68
* Fix crash on exit with --cluster-cman.Alan Conway2010-08-051-0/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@982698 13f79535-47bb-0310-9956-ffa450edef68