Re: ** ERROR **: assertion failed: (giop_thread_self () ==giop_main_thread)



Hi Larry,

On Wed, 2004-02-04 at 19:55 -0600, lgust@verizon.net wrote:
> ** ERROR **: file ../../../../ORBit2-2.9.6/src/orb/GIOP/giop.c: line 602 (giop_main_run): assertion failed: (giop_thread_self () == giop_main_thread)
> aborting...
>
> What is this error?

	It means (I think) that you are doing a CORBA_ORB_run in a different
thread to that in which you initialised the ORB. Of course - this may
well not be a serious problem in fact; but ...

> Is this a problem in ORBit2 or is it something I have done 
> incorrectly with the thread?

	The root cause of the problem is that this is a grotesquely bad area of
the CORBA spec (AFAIK) and that main-loop handling / thread termination
etc. is just really dire.

	If you have done some threaded calls / setup the THREAD_PER_REQUEST
hint stuff you already have an I/O thread idling around ready to
dispatch incoming calls - so your server process doesn't need to do a
CORBA_ORB_run; it can just wait on some exit condition, or run the glib
mainloop or whatever.

	Of course; I guess we could bin that condition without too many
problems as well - but I forget why I put it there - which makes me
slightly nervous.

	HTH,

		Michael.

-- 
 michael@ximian.com  <><, Pseudo Engineer, itinerant idiot




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]