[Zope-ZEO] Has any progress been made on Bug 1783?
Jim Fulton
jim@digicool.com
Mon, 22 Jan 2001 11:17:50 -0500
Hi,
I haven't seen this bug. Unfortunately, __call_method__ handling is
broken in other ways (it leaks. :() . The implementation of it is pretty
hairy. I recommend avoiding it for now. I won't have time to look at this
any time soon. Sorry. Patches accepted. ;)
Jim
"John D. Heintz" wrote:
>
> Hello all,
>
> We are having increasing problems with __call_method__ hook interfering
> with other methods from Persistent.
>
> The class below is an example of what causes the problem. Any call to
> __getstate__() on a T2 object will be hooked through the __call_method__().
>
> class T2(Persistent):
> def __getstate__(self):
> return Persistent.__getstate__(self)
>
> def __call_method__(self, method, methArgs, kwArgs = {}):
> return apply(method, methArgs, kwArgs)
>
> Pickling this class results in the following problem:
> <fragment of traceback>
> return apply(method, methArgs, kwArgs)
> TypeError: function requires exactly 0 arguments; 1 given
>
> I don't have a fix for it, but it seems to be a problem related to
> newCMethod() from ExtensionClass.c building something that doesn't play
> nicely with the python apply machinery for CMethods.
--
Jim Fulton mailto:jim@digicool.com Python Powered!
Technical Director (888) 344-4332 http://www.python.org
Digital Creations http://www.digicool.com http://www.zope.org