----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/39427/#review103445 -----------------------------------------------------------
It looks plausible but I don't know the code well enough to be confident. - Alan Conway On Oct. 21, 2015, 5:51 p.m., Kenneth Giusti wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/39427/ > ----------------------------------------------------------- > > (Updated Oct. 21, 2015, 5:51 p.m.) > > > Review request for qpid and Gordon Sim. > > > Repository: qpid > > > Description > ------- > > WIP > > This patch attempts to keep the proton link active until there is no more > pending work that can be completed. > > It consists of two changes: > > 1) Move ownership of the pn_link_t resource into its respective > Incoming/Outgoing instance. The Incoming/Outgoing instance pn_link_free's > the link on destruction > > 2) establish a detach protocol between the links and the owning Session. > When the peer sends a DETACH, the corresponding link is notified of the > detach. Once that happens, it must complete any outstanding work (eg. send > pending msgs w/remaining credit, settle incoming deliveries). Once all the > work is finished, the Session can drop the shared_ptr to the Out/In link > object and it's destructor will be called. > > This is based on my understanding of the existing code - which may be > entirely wrong. > > > Diffs > ----- > > trunk/qpid/cpp/src/qpid/broker/amqp/Connection.cpp 1708221 > trunk/qpid/cpp/src/qpid/broker/amqp/Incoming.h 1708221 > trunk/qpid/cpp/src/qpid/broker/amqp/Incoming.cpp 1708221 > trunk/qpid/cpp/src/qpid/broker/amqp/Outgoing.h 1708221 > trunk/qpid/cpp/src/qpid/broker/amqp/Outgoing.cpp 1708221 > trunk/qpid/cpp/src/qpid/broker/amqp/Relay.h 1708221 > trunk/qpid/cpp/src/qpid/broker/amqp/Relay.cpp 1708221 > trunk/qpid/cpp/src/qpid/broker/amqp/Session.h 1708221 > trunk/qpid/cpp/src/qpid/broker/amqp/Session.cpp 1708221 > > Diff: https://reviews.apache.org/r/39427/diff/ > > > Testing > ------- > > The interopt tests pass on the system they previously failed on. I'm still > seeing failures in the ha_tests which may be related to this patch. Just > sending it out for early feedback. > > > Thanks, > > Kenneth Giusti > >
