Re: More multi-threading questions...
- From: Michael Meeks <michael ximian com>
- To: Justin Schoeman <justin expertron co za>
- Cc: orbit <orbit-list gnome org>
- Subject: Re: More multi-threading questions...
- Date: Mon, 08 Sep 2003 11:36:59 +0100
Hi Justin,
On Tue, 2003-09-02 at 10:55, Justin Schoeman wrote:
> Just when I thought I was getting CORBA/ORBit whipped, it turned vicious
> on me, and now I am the one that is thouroghly beaten...
;-)
> The problem I am now seeing is this. When the CORBA server is
> multi-threaded AND it performs CORBA client calls (in this case name
> service bindings), I get errors like:
>
> ** ERROR **: file giop-connection.c: line 69 (giop_connection_dispose):
> assertion failed: (cnx->incoming_msg == NULL)
That's really nasty; if you read
ORBit2/src/orb/GIOP/giop-connection.c's (giop_connection_dispose) and
the two methods above & unwind through link, it looks to me like this
can't happen, but ... clearly something odd is going on.
> ** ERROR **: Failed to write to GIOP wakeup socket -1 0x9(9) (-1)
That's most odd - it looks like (somehow) a giop_shutdown has happened
in the middle of the code flow;
What are you doing with ORB_init / shutdowns ? the shutdown logic is
one of the least well tested bits of ORBit2 - since it tends to happen
once only at the end of the process' life.
> or occasionally it works flawlessly.
Right; we need to aggressively chase this then.
> This problem does not occur if either
> 1) I use a single threaded server;
> 2) I use files to pass IORs, instead of a name service.
Ok; that's prolly timing related.
> Can anybody give me any advice on this one?
Sure; I'd be interested to see if the problem persists in the debugger;
and if so - can you put a breakpoint in g_logv, and get stack-traces
from the warnings / assertions (of all threads) [t a a bt], and post
them here.
Thanks,
Michael.
--
michael@ximian.com <><, Pseudo Engineer, itinerant idiot
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]