[omniORB] COMM_FAILURE handling problem in Python

Jan Fedorek jan at fedorek.com
Mon Jun 2 18:18:42 BST 2008


Hi,
I'm using OmniORB v4.1.2 from Python. I'd like to catch the COMM_FAILURE exception so I use method 
omniORB.installCommFailureExceptionHandler. System raise the exception but the handler is not called.

This is written in the log:

...
omniORB: throw giopStream::CommFailure from giopStream.cc:874(0,NO,COMM_FAILURE_UnMarshalArguments)
omniORB: AsyncInvoker: thread id = 5 has exited. Total threads = 4
omniORB: AsyncInvoker: thread id = 4 has exited. Total threads = 3

this is the part of source code:
...
omniORB.installCommFailureExceptionHandler(0, self.__commHandler)
...
def __commHandler(self, cookie, retries, ex):
     print "__commHandler: `%s` : `%s` : `%s`" % (cookie, retries, ex)
     sys.stdout.flush()
     return False

Is there something else I need to do to activate the exception handling ?

Thanks & Regards,
Jano



More information about the omniORB-list mailing list