The patch I applied at work to solve this issue has been working for a while, I'm just struggling with time at the moment to get it incorporated in to the QPID code base.

All I did was add a 'reset()' method to the session and then used the functionality already present in the qpid::messaging::Client::reconnect method to create a new session and loop round recreating any associated senders and receivers.

If someone else wants to pick up the JIRA and apply the change then please feel free, otherwise I will try and get it applied on my next day off.

Clive


On 12/08/2014 14:38, Gordon Sim wrote:
On 08/12/2014 02:28 PM, Jakub Scholz wrote:
In the qpid.messaging C++ API, many exceptions don't close the connection but only the session - for example when one tries to create a receiver on a
queue which doesn't exist.

As far as I understood it, in such situation I have to always recreate the
session and all its senders / receivers manually one by one in my
application, is that correct?

Yes, at present that is correct.

(With AMQP 1.0, errors tend to be signalled at the link level, whereas with 0-10 it was at the session level).

Or is there some way how to let the library
recreate all of them for me - e.g. something like the reconnect() method on
the connection level?

There was a JIRA created[1] by Clive Lilley who I believe had a patch for this in the works. Clive, if you are reading this, any update? Is it still something you are working on?

[1] https://issues.apache.org/jira/browse/QPID-5824



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]




---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to