[ 
https://issues.apache.org/jira/browse/QPID-1050?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ted Ross updated QPID-1050:
---------------------------

    Attachment: qpid-patch45.diff

Diff file

M      python/qpid/managementdata.py
M      python/qpid/management.py
M      python/commands/qpid-config
M      python/commands/qpid-route
M      cpp/src/tests/federation.py
M      cpp/src/Makefile.am
M      cpp/src/qpid/broker/Exchange.cpp
A      cpp/src/qpid/broker/RecoverableConfig.h
A      cpp/src/qpid/broker/LinkRegistry.cpp
A      cpp/src/qpid/broker/PersistableConfig.h
M      cpp/src/qpid/broker/Queue.cpp
M      cpp/src/qpid/broker/Exchange.h
M      cpp/src/qpid/broker/Broker.h
M      cpp/src/qpid/broker/System.h
A      cpp/src/qpid/broker/LinkRegistry.h
M      cpp/src/qpid/broker/NullMessageStore.h
M      cpp/src/qpid/broker/ConnectionHandler.cpp
M      cpp/src/qpid/broker/Bridge.h
M      cpp/src/qpid/broker/MessageStore.h
M      cpp/src/qpid/broker/RecoveryManagerImpl.h
A      cpp/src/qpid/broker/Link.cpp
M      cpp/src/qpid/broker/RecoveryManagerImpl.cpp
M      cpp/src/qpid/broker/Broker.cpp
M      cpp/src/qpid/broker/NullMessageStore.cpp
M      cpp/src/qpid/broker/MessageStoreModule.h
M      cpp/src/qpid/broker/ConnectionFactory.h
M      cpp/src/qpid/broker/Bridge.cpp
M      cpp/src/qpid/broker/RecoveryManager.h
M      cpp/src/qpid/broker/Connection.h
M      cpp/src/qpid/broker/MessageStoreModule.cpp
M      cpp/src/qpid/broker/ConnectionFactory.cpp
M      cpp/src/qpid/broker/Connection.cpp
A      cpp/src/qpid/broker/Link.h
M      cpp/src/qpid/management/ManagementExchange.cpp
M      cpp/src/qpid/management/ManagementAgent.h
M      cpp/src/qpid/management/Manageable.h
A      cpp/src/qpid/management/ManagementBroker.cpp
M      cpp/src/qpid/management/ManagementExchange.h
A      cpp/src/qpid/management/ManagementBroker.h
M      cpp/src/qpid/management/ManagementObject.h
D      cpp/src/qpid/management/ManagementAgent.cpp
M      cpp/src/qpid/management/Manageable.cpp
M      cpp/src/qpid/amqp_0_10/Connection.h
M      cpp/src/qpid/amqp_0_10/Connection.cpp
M      cpp/src/qpid/sys/ProtocolFactory.h
M      cpp/src/qpid/sys/AsynchIOHandler.h
M      cpp/src/qpid/sys/TCPIOPlugin.cpp
M      cpp/src/qpid/sys/ConnectionCodec.h
M      cpp/src/qpid/sys/AsynchIOHandler.cpp
M      cpp/src/qpid/sys/posix/AsynchIO.cpp
A      cpp/src/qpid/sys/ProtocolAccess.h
M      cpp/managementgen/templates/Class.h
M      specs/management-schema.xml


> Durablilty of federation config, other miscellaneous fixes
> ----------------------------------------------------------
>
>                 Key: QPID-1050
>                 URL: https://issues.apache.org/jira/browse/QPID-1050
>             Project: Qpid
>          Issue Type: New Feature
>          Components: C++ Broker
>    Affects Versions: M3
>            Reporter: Ted Ross
>         Attachments: qpid-patch45.diff
>
>
> The attached patch contains the following changes:
> 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.
> Special note:
> To support the new federation features, it was necessary to create a new 
> class called ProtocolAccess.  This class is used to consolidate linkage 
> between previously unlinked objects in the architecture.  For example, 
> federation link objects need to know when TCP connections are lost and they 
> need access to Connection objects so that bridge configuration can be managed.
> Since "management plane" logic needs access to a wide variety of operational 
> objects, ProtocolAccess was introduced.  ProtocolAccess isolates in one place 
> the "controversial" architectural linkages needed for federation.  If, 
> through team review, it is decided in the future to use a different 
> architecture, ProtocolAccess can easily be removed and replaced.
> Features still missing:
> In the interest of getting these changes submitted, I have left out several 
> necessary features.  These can be added after a few more hours worth of work.
> 1) Durability for federation "Bridge" configuration
> 2) Link management in the qpid-route utility (i.e. the ability to view link 
> status and troubleshoot connectivity issues)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to