[omniORB] Py_ServantLocator Core Dump

Duncan Grisby dgrisby@uk.research.att.com
Tue, 19 Sep 2000 11:31:36 +0100


On Monday 18 September, Gary Pennington wrote:

> I've done some more investigating, still no debug build unfortunately, but I
> have got some information.

What problem do you have in creating a debug build?

[...]
> self.factory.persist is locked on entry and released on termination.
> I mess around with serv state using __getstate__ to copy the serv dict object
> and delete the "__omni_svt" entry from the copied dictionary.

I suspect that this might be the problem. While you are doing the
postinvoke(), another call might come in for the same object, causing
preinvoke() to be called again. If you return the same servant object
at a time when you are messing with __omni_svt, that could confuse
things enough to cause a segfault.

Cheers,

Duncan.

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