[rabbitmq-discuss] Exceptions in c# client library

Alister Morton Alister.Morton at tradition.com
Mon Dec 15 09:20:37 GMT 2008

> it is very probable that this is a bug related to something
> that was reported before, see
> http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/2008-Augu
> st/001545.html
> for details.

I'm not sure it's the same thing. What I'm seeing is the expected exceptions being thrown when, for example, the network connection is lost. The problem is, I can't see how I can easily catch these exceptions and react to them, for example, if the network connection is lost I'd like to be able tear down the model and connection, and then attempt to reconnect. Currently I can't see how I can catch these events. Maybe I'm missing something.

In our internal middle tier system, when the connection is lost the middle tier itself takes care of remaking the connection, as network faults can be transient this is what you want. At the same time, the client is called back to indicate that the connection has been lost, and is called back when the connection is remade.

AFAICT there aren't any hooks on the IConnection or IModel to enable the client process to handle these sort of exceptions. If I add a handler with

              conn.CallbackException += new RabbitMQ.Client.Events.CallbackExceptionEventHandler(conn_CallbackException);
                model.CallbackException += new RabbitMQ.Client.Events.CallbackExceptionEventHandler(model_CallbackException);

they don't get called when these sort of errors occur.


The information herein may have been obtained from various sources. Any opinion expressed may be that of the sender only, is subject to change without notice and should be independently evaluated. Nothing herein constitutes investment advice or an offer, or solicitation of an offer, to buy or sell any financial product. Any data consist of purely indicative prices and should not be relied upon to revalue any commercial positions held by any recipient. Tradition makes no warranty that the data represent or indicate prices at which transactions may be or have been made by any Tradition Group company. To the maximum extent of the law, Tradition accepts no responsibility for, and cannot and does not warrant the integrity, accuracy, quality, completeness, merchantability or suitability for a particular purpose or requirement of the information or data, even if arising out of the negligence of Tradition or otherwise. Tradition accepts no liability for any direct, indirect or other consequential loss arising out of any use of the information contained in this document or any omission from it. This communication is directed at Eligible Counterparties and Professional Clients as defined by the FSA. It is not for distribution to nor should it be relied upon by Private Clients. It is not intended for distribution to, or use by any person or entity in any jurisdiction or country where such distribution or use would be contrary to any applicable law or regulation. Please note that, for business or compliance reasons, we may monitor and read emails sent or received using our servers or equipment. Tradition (UK) Ltd (937647; FSA 139200), Tradition Financial Services Ltd (1046064; FSA 147543), TFS Derivatives Ltd (4051930; FSA 197244), Tradition London Clearing Ltd (3633863; FSA 190632) and TFS-ICAP Ltd (4025995; FSA 206018) registered in England at Beaufort House, 15 St Botolph Street, London EC3A 7QX; authorised and regulated by the Financial Services Authority. VAT No: GB 365 4639 27 except TFS-ICAP GB 766 0854 05.

More information about the rabbitmq-discuss mailing list