[omniORB] tcpEndpoint closed - no client connections possible

Duncan Grisby duncan at grisby.org
Mon Apr 3 18:04:17 BST 2006


On Saturday 25 March, "Kiesswetter, Florian (Florian)" wrote:

> I've been running a lot of servers on omniORB-4.0.3 and noticed that
> half of the servers were not be able to serve any client connections
> after a network outage. The tcpEndpoint socket has been closed and one
> task has exited (I expect the one running the
> giopRendezvouser?). Searching the mailing list archive I found one
> issue which has been fixed in release 4.0.5 regarding the handling of
> accept() errors in case of an ERRNO RC_EINTR.
> 
> So I expect that my issues will be gone after updating to a newer
> version, but I still would like to understand why and in which
> situation omniORB runs in this situation.

The problem you mention only happened on some platforms, and only in
cases where accept() returned an error other than EINTR. Exactly which
situations cause accept to return an error also depends on the platform.
Without further diagnostics of what happened, it's hard to say why some
of your servers failed but not all, but it probably reflects the state
of new incoming connections -- those servers with new connections in a
particular state died; those with established connections or no
connections did not.

> Does the client behaviour influence the appearance of this issue (non
> graceful shutdown of an established connection?)

No, once there's a connection, the server should cope fine no matter
what happens. The bug was only to do with failures while accepting a new
connection. Of course, there may be undiscovered bugs to do with
existing connections, but I don't think so.

Cheers,

Duncan.

-- 
 -- Duncan Grisby         --
  -- duncan at grisby.org     --
   -- http://www.grisby.org --



More information about the omniORB-list mailing list