[Zope-ZEO] Has any progress been made on Bug 1783?

John D. Heintz jheintz@isogen.com
Fri, 19 Jan 2001 14:31:01 -0600


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.

Thanks, John

-- 
. . . . . . . . . . . . . . . . . . . . . . . .

John D. Heintz | Senior Engineer

1016 La Posada Dr. | Suite 240 | Austin TX 78752
T 512.633.1198 | jheintz@isogen.com

w w w . d a t a c h a n n e l . c o m