> On Feb. 18, 2013, 4:31 p.m., Alan Conway wrote: > > How do you flow-control the interconnects without using store-and-forward? > > Is there a new flow control mechanism for 1.0? > > Gordon Sim wrote: > For the relayed links, the credit issued by the downstream is passed back > up to the upstream. (I need to go through the cases where credit is cancelled > to make sure that is working correctly).
I guess acknowledgements are also forwarded? - Alan ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/9469/#review16711 ----------------------------------------------------------- On March 14, 2013, 1:17 p.m., Gordon Sim wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/9469/ > ----------------------------------------------------------- > > (Updated March 14, 2013, 1:17 p.m.) > > > Review request for qpid. > > > Description > ------- > > I.e. provide equivalent functionality as offered over AMQP 0-10 through the > so called federation capabilities. > > This patch, which is still a work in progress, does not simply reproduce the > 0-10 capabilities over 1.0. It does not use the existing Bridge and Link > objects. For one thing, the naming of those objects is confusing - wrong in > fact - from a 1.0 perspective. The code is also quite tied into 0-10. > Finally, I think there are aspects of the existing code that with the benefit > of experience aren't ideal. My view was that leaving that code unaltered and > adding equivalent functionality anew for 1.0 was the cleanest approach. > > The current patch offers the following: > > * Through management you can define 'domains'. These are essentially > descriptions of some external entity to which a 1.0 connection can be made. > > * Through management you can set up incoming or outgoing links to or from a > domain. The source and target for the link can be specified. This allows you > for example to pull messages off a queue on some other broker and have them > routed through an exchange on the 'local broker. > > * You can also establish 'relayed' links. If you open a link (either incoming > or outgoing) to <name>@<domain>, an there is no queue or exchange matching > that full address defined, then the broker will determine if the domain is > one it knows about and if so it will establish a corresponding link to that > domain. So for example if you send to my-queue@another-broker, then a link > will be setup to my-queue on another-broker and all the messages you send > over the original link will be relayed over that (by relayed I mean that this > is not a store-and-forward approach where the broker we are connected to > accepts the message and forwards it, but a simple proxying approach). You can > also open a receiving link to my-queue@another-broker and pull messages off > that remote queue via the broker you are connected to. > > > This addresses bug QPID-4586. > https://issues.apache.org/jira/browse/QPID-4586 > > > Diffs > ----- > > /trunk/qpid/cpp/src/CMakeLists.txt 1456131 > /trunk/qpid/cpp/src/Makefile.am 1456131 > /trunk/qpid/cpp/src/amqp.cmake 1456131 > /trunk/qpid/cpp/src/qpid/broker/Broker.h 1456131 > /trunk/qpid/cpp/src/qpid/broker/Broker.cpp 1456131 > /trunk/qpid/cpp/src/qpid/broker/LossyQueue.cpp 1456131 > /trunk/qpid/cpp/src/qpid/broker/ObjectFactory.h PRE-CREATION > /trunk/qpid/cpp/src/qpid/broker/ObjectFactory.cpp PRE-CREATION > /trunk/qpid/cpp/src/qpid/broker/SecureConnectionFactory.h 1456131 > /trunk/qpid/cpp/src/qpid/broker/SecureConnectionFactory.cpp 1456131 > /trunk/qpid/cpp/src/qpid/broker/amqp/Connection.h 1456131 > /trunk/qpid/cpp/src/qpid/broker/amqp/Connection.cpp 1456131 > /trunk/qpid/cpp/src/qpid/broker/amqp/Domain.h PRE-CREATION > /trunk/qpid/cpp/src/qpid/broker/amqp/Domain.cpp PRE-CREATION > /trunk/qpid/cpp/src/qpid/broker/amqp/Incoming.h PRE-CREATION > /trunk/qpid/cpp/src/qpid/broker/amqp/Incoming.cpp PRE-CREATION > /trunk/qpid/cpp/src/qpid/broker/amqp/Interconnect.h PRE-CREATION > /trunk/qpid/cpp/src/qpid/broker/amqp/Interconnect.cpp PRE-CREATION > /trunk/qpid/cpp/src/qpid/broker/amqp/Interconnects.h PRE-CREATION > /trunk/qpid/cpp/src/qpid/broker/amqp/Interconnects.cpp PRE-CREATION > /trunk/qpid/cpp/src/qpid/broker/amqp/ManagedIncomingLink.h PRE-CREATION > /trunk/qpid/cpp/src/qpid/broker/amqp/ManagedIncomingLink.cpp PRE-CREATION > /trunk/qpid/cpp/src/qpid/broker/amqp/ManagedOutgoingLink.h 1456131 > /trunk/qpid/cpp/src/qpid/broker/amqp/ManagedOutgoingLink.cpp 1456131 > /trunk/qpid/cpp/src/qpid/broker/amqp/Outgoing.h 1456131 > /trunk/qpid/cpp/src/qpid/broker/amqp/Outgoing.cpp 1456131 > /trunk/qpid/cpp/src/qpid/broker/amqp/ProtocolPlugin.cpp 1456131 > /trunk/qpid/cpp/src/qpid/broker/amqp/Relay.h PRE-CREATION > /trunk/qpid/cpp/src/qpid/broker/amqp/Relay.cpp PRE-CREATION > /trunk/qpid/cpp/src/qpid/broker/amqp/Sasl.h 1456131 > /trunk/qpid/cpp/src/qpid/broker/amqp/Sasl.cpp 1456131 > /trunk/qpid/cpp/src/qpid/broker/amqp/SaslClient.h PRE-CREATION > /trunk/qpid/cpp/src/qpid/broker/amqp/SaslClient.cpp PRE-CREATION > /trunk/qpid/cpp/src/qpid/broker/amqp/Session.h 1456131 > /trunk/qpid/cpp/src/qpid/broker/amqp/Session.cpp 1456131 > /trunk/qpid/cpp/src/qpid/broker/amqp/Translation.h 1456131 > /trunk/qpid/cpp/src/qpid/broker/amqp/Translation.cpp 1456131 > /trunk/qpid/cpp/src/qpid/messaging/amqp/ConnectionContext.cpp 1456131 > /trunk/qpid/cpp/src/tests/CMakeLists.txt 1456131 > /trunk/qpid/cpp/src/tests/Makefile.am 1456131 > /trunk/qpid/cpp/src/tests/brokertest.py 1456131 > /trunk/qpid/cpp/src/tests/interlink_tests.py PRE-CREATION > /trunk/qpid/cpp/src/tests/run_interlink_tests PRE-CREATION > /trunk/qpid/cpp/src/tests/test_env.sh.in 1456131 > /trunk/qpid/specs/management-schema.xml 1456131 > /trunk/qpid/tools/src/py/qpidtoollibs/broker.py 1456131 > > Diff: https://reviews.apache.org/r/9469/diff/ > > > Testing > ------- > > > Thanks, > > Gordon Sim > >
