[omniORB] oneway callback gets lost

Serguei Kolos Serguei.Kolos at cern.ch
Thu Apr 5 13:31:09 BST 2007


Hi

Can someone confirm please that the issue which I have reported is a 
real issue
or I'm just doing something wrong? Does anybody have an idea on how to solve
the problem?

Cheers,
Sergei

Serguei Kolos пишет:
> Hello
>
> I'm using omniORB 4.0.7 on SLC4 Linux (kernel 2.6.9-42).
> I have a system with server and subscriber which subscribes to the 
> server and
> periodically receives callbacks (defined as oneway method) from the 
> server.
> I have set the scanGranularity parameter to 0 on the server and I'm using
> default settings on the subscriber.
> I have noticed the following problem - if the server sends callback to 
> subscriber
> and then waits for several minutes before sending another one then 
> this new
> callback is not properly processed on the subscriber side and in fact 
> it never goes
> to the user code. This is the ouput which appears on the subscriber 
> side when
> the callback should have been received:
> omniORB: throw giopStream::CommFailure from 
> giopStream.cc:838(0,NO,COMM_FAILURE_UnMarshalArguments)
> I had a look to the code and found that this happens because the 
> ::recv function which
> is called by the Recv method returns 0 which happens probably because 
> it is trying to
> read from the socket which was already shut down.
>
> If I don't set the scanGranularity to 0 then the problem never occurs.
> I have attached the output of both server and subscriber with the 
> traceLevel set to 35.
>
> Cheers,
> Sergei




More information about the omniORB-list mailing list