Hi.

I have been looking at the 0-10 session close semantics, and been
meaning to ask this for a while...

There is no explicit close message in 0-10, rather the session timeout
is supposed to be set to 0 seconds and then a session detach message
is sent. I have implemented this, since it requires simply creating a
handler for sessionRequestTimeout messages that actually sets expiry
to 0, as discussed on QPID-2586 and in this message on the dev list:
http://apache-qpid-developers.2158895.n2.nabble.com/Java-0-10-Session-closure-expiry-timeout-td4865744.html#a4865744

Also, see comments in the code (in o.a.q.t.Session.java):

// XXX: when the broker and client support full session
// recovery we should use expiry as the requested timeout

// XXX: we manually set the expiry to zero here to
// simulate full session recovery in brokers that don't
// support it, we should remove this line when there is
// broker support for full session resume:
expiry = 0;

which is exactly what I have done, I use the expiry field (therefore
on session create the timeout is set to 1 on both sides now) and (in
o.a.q.t.SessionDelegate.java) we have:

// XXX: we ignore this right now, we should uncomment this
// when full session resume is supported:

where I have uncommented the line following, which  just calls
ssn.setExpiry(t.getTimeout()) and done the same  in the new handler
for sessionRequestTimeout.

I believe that this is a fairly simple and non-contentious change. One
thing that I noticed from other dev list messages is that this could
affect the failover mechanism used by the C++ clients. I ran the cpp
test suite with my changes and noticed no difference, but then I
couldn't see what tests would actually be affected. Can anyone shged
more light on the problems I might expect or be missing?

Thanks,
Andrew.
-- 
-- andrew d kennedy ? edinburgh : +44 7941 197 134

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscr...@qpid.apache.org

Reply via email to