[omniORB] OpenVMS problem

Duncan Grisby duncan at grisby.org
Mon Apr 20 11:06:59 BST 2009


On Friday 27 March, Bruce Visscher wrote:

> Recently I have discovered a problem on the OpenVMS platform that only occurs
> in omniORB 4(12).  It did not occur in omniORB 2 or 3.
> 
> Occasionally, a server will display the following:
> 
> omniORB: Error return from select(). errno = 65535
> omniORB: Unrecoverable error for this endpoint: giop:tcp:xx.xx.xx.xx:xxxxx, it
> will no longer be serviced.

[...]
> I am wondering what would happen if I turn off the timeout in select
> altogether.  (Iirc, you do that by passing a null in place of the timeout*) 
> Would this just make it more difficult to have a graceful shutdown?  (The way
> around that would be to issue a shutdown on the listening socket from a
> different thread it seems to me.)  Is there a way to do this already?

Sorry for the delay in replying. It's not a good idea to remove the
timeout in select(), since that way you will sometimes fail to watch
connections when you should do. The timeout is used to cause the code to
rescan the set of file descriptors to watch.

Does it work if you modify the code to just carry on if you get that
error?  i.e. duplicate the way it handles EBADF.

Cheers,

Duncan.

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



More information about the omniORB-list mailing list