[omniORB] debugging with omniORB

Bruce Visscher visschb@rjrt.com
Wed, 06 Oct 1999 18:07:15 -0400



Stefan Seefeld wrote:
> 
> Hey,
> 
> I'm debugging a program which uses tons of omniORB
> code. The main routine contains an event loop within
> which lots of servants are created and destroyed. At
> one point an exception is thrown from inside the ORB.
> 
> Now I'm wondering how to best debug this. What is the
> hierarchy of exceptions used I can catch to get closer
> to the cause of my trouble ?

		CORBA::Exception
		     ^
		    /  \
		   /    \
CORBA::UserException	CORBA::SystemException

Then there's also omniORB::fatalException (which theoretically shouldn't
happen).

> Are there other possibilities to get more verbose output ?
> Especially, is there any way to log ref counting and similar
> error prone things ?

The best I've been able to do, in genera, is to use the
NP_RepositoryID(), if it's a CORBA::SystemException (if it's a user
exception, you should be able to handle that yourself).  Or if you have
RTTI available, you can use that instead.  (That reminds me: is there
any chance that the NT distribution could be compiled with this turned
on by default?  We always have to rebuild from sources in order to get
this on NT.)

The one problem that I've had with this is that by far the most frequent
exception is CORBA::COMM_FAILURE ("is a" CORBA::SystemException), so
just printing the name of the exception might not be that helpful (but
it's better than nothing).

> 
> Thanks !
> 
> Regards,        Stefan
> _______________________________________________________
> 
> Stefan Seefeld
> Departement de Physique
> Universite de Montreal
> email: seefelds@magellan.umontreal.ca
> 
> _______________________________________________________
> 
>       ...ich hab' noch einen Koffer in Berlin...