[omniORB] location forward to stale reference - strangeness

Duncan Grisby duncan at grisby.org
Fri Mar 12 16:51:31 GMT 2004


On Thursday 4 March, baileyk at schneider.com wrote:

> I have a server which does location forwarding.  It sometimes forwards to a
> stale reference and I don't understand the resulting behavior.  It appears
> that the client reverts to the original profile and tries the call again,
> which makes sense, but then the server appears to never receive the second
> call.  The client then times out.  The server ORB later hangs when
> attempting to shutdown.
> 
> Traces are below.  Two questions
> 
> 1) Why do the traces show a second call to _non_existent() sent by the
> client, and so matching input message on the server side?
> 
> 2) What should happen?  If the server didn't lose the second try, and
> continues to forward to the same stale reference, how many times should a
> client retry?

The client is doing what I'd expect. When a forwarded reference fails
(whether on the first contact or subsequent ones), the client goes
back to the original location to have another go. That's required to
support migration of objects if they migrate more than once.

I really don't know why the server doesn't see the second request.
What should happen is that it keeps retrying, with exponential
back-off delays. You might try attaching a debugger to the server
process when the client is waiting for the second call to return, to
see what the server is up to.

Cheers,

Duncan.

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



More information about the omniORB-list mailing list