[omniORB] problem with bidirectional feature

Fernando A. de Araujo Filho maverick@elogica.com.br
Thu Dec 5 16:16:01 2002


>> I recompile your example on linux and take same results.
>> Possibly such behaviour stipulated of bidir definitions by OMG ?

>. --
>> Slava Garelin

Thank you Slava,

I am more calm now ... :-)
I was becaming crazy thinking I was making something really wrong ...
Maybe you are rigth about "behaviour stipulated of bidir definitions by
OMG",
or speculating, when the client receive the "GIOP::CloseConnection"  message
in giopimpl12.cc,
as we have both sides with callbacks registered, maybe something are not
really
destroyed  ... I dont know.

I dont like to disturb anybody. I have learned something about CORBA.
implementing code,
solving my problems with myself. In this case, I could not solve ...

I do like to understand the code below, if it is related with that
behaviour  ...
as the problem occurs after any side have restarted.

> I observed  in giopimpl12.cc the code below :
> ...
> /*
>   $Log: giopImpl12.cc,v $
>   Revision 1.1.4.18  2002/11/26 16:54:35  dgrisby
>   Fix exception interception.
>  ...
> // I suppose the "GIOP::CloseConnection" message is received
> // when the other side is dying, in IIOP 1.2.
> void
> giopImpl12::unmarshalWildCardRequestHeader(giopStream* g) {
> ...
>   case GIOP::CloseConnection:
>     if (g->pd_strand->biDir) {
>       // proper shutdown of a connection.
>       // XXX what to do?
>     }
>     inputRaiseCommFailure(g);
>     break;
>  ...
>

thanks again,

Fernando Araujo
maverick@elogica.com.br