summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/broker/LinkRegistry.cpp
Commit message (Collapse)AuthorAgeFilesLines
* QPID-3007: Unique management identifier for connections.Alan Conway2011-02-011-1/+10
| | | | | | | | | | | | | | | Management was using remote socket address (host:port) to identify connections, but this is not a unique identifier. Both the local and remote addresses are needed to uniquely identify a connection - see http://www.faqs.org/rfcs/rfc793.html. This was causing management errors (multiple objects using same identifier) and cluster failures (invalid-arg exception) due to inconsistencies caused by the incorrect management map. This commit uses "localhost:localport-remotehost:remoteport" as a unique identifier. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1066220 13f79535-47bb-0310-9956-ffa450edef68
* QPID-2982 Bug 669452 - Creating a route and using management tools can crash ↵Alan Conway2011-01-181-0/+9
| | | | | | | | | | | | 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/qpid@1060568 13f79535-47bb-0310-9956-ffa450edef68
* SASLizing Interbroker LinksMichael Goulish2010-10-201-0/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ------------------------------------------------------------- 1. Brokers already knew how to handle the server side of SASLized links, but not the client side. So we promoted the client-side SASL code from the client library to the common library so that the broker could also use it. This affected SaslFactory.{h,cpp} and Sasl.h TODO -- can the server-side and client-side code be unified here? 2. Some of the SASL verbs in broker/ConnectionHandler.cpp are expanded: start, secure, tune. 3. broker/SecureConnection is altered to get the client-broker and the server-broker to agree on when the security layer should be inserted. 4. the python tool qpid-route is modified so that, in the "route add" command, you can specify the security mechanism for SASL to use. TODO -- should we also pass in {min,max}SSF ? 5. Changes in broker/LinkRegistry to allow the information input by qpid-route to be passed up to where it is needed. 6. A bash script test run by "make check" that creates a SASLized federation link and sends some messages down it. TODO - write a python unit test instead of a bash script. I think I uncovered a bug in the python code when I tried. 7. NOTE - testing for this feature does not work with versions of SASL earlier than 2.1.22, becuase I can't tell SASL to use a SASL database file in a nonstandard location. The test is disabled for earlier versions. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1024541 13f79535-47bb-0310-9956-ffa450edef68
* Code cleanup in broker directory.Alan Conway2010-10-141-0/+1
| | | | | | | | - 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/qpid@1022679 13f79535-47bb-0310-9956-ffa450edef68
* Give timer tasks a name for logging purposes.Alan Conway2010-08-261-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@989925 13f79535-47bb-0310-9956-ffa450edef68
* Support for multiple protocols in qpid::Url.Alan Conway2010-05-111-24/+24
| | | | | | | | | | - simplified qpid::Address to hold (protocol,host,port) triples. - protocol plugins call Url:addProtocol to add tags to Url parser. - use Address::protocol when establishing connections. - ssl_test: tests using URL to connect. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@943130 13f79535-47bb-0310-9956-ffa450edef68
* Fixed LinkRegistry destructor to only cancel TimerTask if there is one!Andrew Stitcher2009-08-071-1/+3
| | | | | | | (the only time there might not be one is in the store tests) git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@801871 13f79535-47bb-0310-9956-ffa450edef68
* Change QueueCleaner so that it cancels any outstanding TimerTask on destructionAndrew Stitcher2009-08-071-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@801861 13f79535-47bb-0310-9956-ffa450edef68
* Change LinkRegistry to cancel its TimerTask in its destructorAndrew Stitcher2009-08-071-2/+9
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@801860 13f79535-47bb-0310-9956-ffa450edef68
* Change remaining broker Timer clients to use the single broker TimerAndrew Stitcher2009-07-301-5/+5
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@799274 13f79535-47bb-0310-9956-ffa450edef68
* Change all broker users of broker::Timer to use sys::TimerAndrew Stitcher2009-07-301-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@799273 13f79535-47bb-0310-9956-ffa450edef68
* Oops: eliminated a ternary operator giving the "else" instead of the "then".Andrew Stitcher2009-07-281-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@798386 13f79535-47bb-0310-9956-ffa450edef68
* Add a default constructor to LinkRegistry so that you don't needAndrew Stitcher2009-07-281-2/+15
| | | | | | a broker to create one for the store tests git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@798383 13f79535-47bb-0310-9956-ffa450edef68
* Add directory to #includeAlan Conway2009-07-141-3/+3
| | | | 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-131-6/+4
| | | | | | heartbeats and the store tests. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@793602 13f79535-47bb-0310-9956-ffa450edef68
* Change remaining broker Timer clients to use the single broker TimerAndrew Stitcher2009-07-101-2/+4
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@793122 13f79535-47bb-0310-9956-ffa450edef68
* Change all broker users of broker::Timer to use sys::TimerAndrew Stitcher2009-07-101-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@793121 13f79535-47bb-0310-9956-ffa450edef68
* Federation: Propagation of dynamic bindings is now done on the thread ↵Ted Ross2009-07-021-0/+1
| | | | | | | | | | | servicing the federation link (connection). Also, some minor cleanup of unneeded recursive includes. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@790698 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1725: Revised some lock scopes in management and link registry to avoid ↵Gordon Sim2009-03-111-27/+30
| | | | | | deadlocks. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@752510 13f79535-47bb-0310-9956-ffa450edef68
* Check that broker pointer is not null before invoking on it.Gordon Sim2009-02-241-1/+1
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@747540 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1671: Set userid for client side of inter-broker links.Gordon Sim2009-02-241-1/+7
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@747507 13f79535-47bb-0310-9956-ffa450edef68
* Catch up on recent file additions/removals; fix compile errors on WindowsStephen D. Huston2009-01-231-3/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@737201 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1567: More changes to make clustering and federation work togetherGordon Sim2009-01-221-1/+20
| | | | | | | | | | | * replicate outgoing link traffic to all nodes * coordinate amongst nodes so that only one node actually maintains active links with the others able to take over if that node fails git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@736841 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1567: Added ability for federation links to failover to other specified ↵Gordon Sim2009-01-211-0/+39
| | | | | | known-hosts git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@736354 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1567: added 'exactly-once' guarantee to asynchronous replication of ↵Gordon Sim2009-01-201-1/+3
| | | | | | | | | | | | queue state * altered replication protocol to detect and eliminate duplicates * added support for acknowledged transfer over inter-broker bridges * added option to qpid-route to control this git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@736018 13f79535-47bb-0310-9956-ffa450edef68
* Add Message callbacks for async completion.Alan Conway2008-11-061-1/+0
| | | | | | | | Add unit test for async completion. Add sync parameter to generated session functions, defaults as before but allows greater control. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@711998 13f79535-47bb-0310-9956-ffa450edef68
* Allow management clienst to specify transport to use for inter-broker linksGordon Sim2008-10-131-2/+2
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@704159 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1349 - Push routing for federation (includes hook for dynamic routing)Ted Ross2008-10-101-1/+3
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@703561 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1274 - Changed C++ namespace for generated management code. Improved ↵Ted Ross2008-09-151-1/+2
| | | | | | efficiency of generated functions to use const references for non-simple types. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@695511 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1113 Management cleanup and performance enhancementsTed Ross2008-06-021-10/+20
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@662470 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1087Ted Ross2008-05-211-1/+54
| | | | git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@658886 13f79535-47bb-0310-9956-ffa450edef68
* QPID-990: Patch from Ted Ross to enable persisting of inter-broker routing ↵Gordon Sim2008-05-131-5/+90
| | | | | | entities git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@656023 13f79535-47bb-0310-9956-ffa450edef68
* QPID-1050: Patch from Ted Ross:Gordon Sim2008-05-121-0/+102
1) Durability for federation links (broker-to-broker connections) 2) Improved handling of federation links: a) Links can be created even if the remote broker is not reachable b) If links are lost, re-establishment will occur using an exponential back-off algorithm 3) Durability of exchanges is now viewable through management 4) ManagementAgent API has been moved to an interface class to reduce coupling between the broker and manageable plug-ins. 5) General configuration storage capability has been added to the store/recover interface. This is used for federation links. 6) Management object-ids for durable objects are now themselves durable. (Note: some refactoring needed around ProtocolAccess needed to try and reduce dependencies) git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@655563 13f79535-47bb-0310-9956-ffa450edef68