Hi Jakub, I expect Gordon can comment this much better, but can't it be resolved by QPID-5288?
Kind regards, Pavel ----- Original Message ----- > From: "Jakub Scholz" <ja...@scholz.cz> > To: users@qpid.apache.org > Sent: Saturday, November 9, 2013 1:46:51 AM > Subject: connection.close() in C++ client never returns after > resource-limit-exceeded exception > > Hi, > > I have C++ client using the qpid.messaging API to send messages to a queue > on the C++ broker. The code block where I'm sending the messages is > surrounded with try-catch and when I catch an exception I simply try to > close the connection and exit the program: > > try { > ... > sender.send(msg, false); > ... > } > catch (...) { > connection.close(); > } > > When using AMQP 0.10 and sending a message into a queue which is already > full, the connaction.close() call returns and I can exit the program. But > with AMQP 1.0 when I receive the same exception, the connection.close() > call seems to hang "forever" and never return. > > With other exceptions - for example with unauthorized access - the > connection.close() returns fine. I believe the resource-limit-exceeded > error does close the connection from the broker side. That might be the > reason for the different behaviour. But I would still expect that the > close() call should not hang. > > Is the error handling as I implemented it not correct - i.e. do I have to > specifically catch the exceptions which close the connection? Or is this a > bug in the AMQP 1.0 implementation? > > Thanks & Regards > Jakub > --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@qpid.apache.org For additional commands, e-mail: users-h...@qpid.apache.org