[omniORB] activate_object_with_id races?

Duncan Grisby dgrisby@uk.research.att.com
Tue, 04 Dec 2001 16:48:19 +0000


On Tuesday 4 December, Mike Ladwig wrote:

> I am having a problem with a persistent object factory where I am getting a 
> "activate_object_with_id() races with another thread doing activate / 
> deactivate. Waiting" message.

I assume the problem is that it then freezes?  If not, the message is
nothing to worry about.

> The code in question has been working for a while without problem,
> so my question is if anyone knows of changes that might have caused
> this and/or any solutions, it would be very helpful.

The code that's printing the message was added after 3.0.4 to fix a
nasty bug with race conditions between object activations and
deactivations.

One possible cause of the freeze is that a servant activator has been
asked to incarnate a particular object id, and the incarnate()
implementation calls activate_object_with_id(). The POA has already
marked the object id as having an operation pending on it, so the
activate call blocks. If this is the situation, just remove the call
to activate_object_with_id() and it will work fine.

If that isn't the problem, can you send a minimal example program that
exhibits the problem?

Cheers,

Duncan.

-- 
 -- Duncan Grisby  \  Research Engineer  --
  -- AT&T Laboratories Cambridge          --
   -- http://www.uk.research.att.com/~dpg1 --