[Zope-CMF] UnpickleableError

seb bacon seb@jamkit.com
Thu, 24 May 2001 18:08:27 +0100


OK, a bit more info, although it's just as confusing to me...

The failure happens in line 386 of Connection.py:

  dump(state)

And it seems the Unpickleable error is being raised because through
some kind of magic: after going to BaseStorage to get an oid, the dump
is calling the python DateTime module, then raising an
AttributeError thus:

    def __getattr__(self, name):
        if '%' in name: return strftimeFormatter(self, name)
        raise AttributeError, name

And it appears to be this exception which is causing the whole thing
to smell funny.  Or at least, the AttributeError is the last thing
that occurs before the UnpickleableError.

I'm no pdb expert; perhaps I could be debugging this better?

seb

* seb bacon <seb@jamkit.com> [010524 16:33]:
> I'm having a really confusing time here, so my explanation / plea for
> help might not make much sense.  It's further complicated by the fact
> I've hacked the source in a few places and didn't version control it
> (I thought it would be a 10 minute job...:)  If anyone more
> experienced than I can give me their gut feeling about this, though,
> I'd appreciate it.
> 
> I've fixed a problem stopping you from creating new objects in a
> member's home folder over WebDAV.  All content types are created
> correctly, except File types (which are the default type). 
> 
> The only client-side symptom for the failure with these types is a 500
> Internal Server Error message.  If I go through the debugger, I find
> an UnpickleableError is raised at the point where the transaction is
> committed.  The exc_value is an UnpickleableError instance,
> unhelpfully enough, so I don't know much about it.
> 
> I *can* create File types TTW.  I can also confirm that the NullResource
> is correctly using a CMFDefault File factory.  The data is being stored in
> the object correctly; it's just the commit which fails.
> 
> The File code is vanilla CMF CVS.  I don't have the problem with Images, which use
> almost indentical code, including the same PUT (from OFS.Image).
> 
> What kind of thing causes UnpickleableErrors?  Why would Files fail
> and Images work?  Why would Files fail through WebDAV and succeed TTW?
> I know these are very vague questions but any pointers at all would be
> useful at this point....
> 
> cheers
> 
> seb
> 
> 
> _______________________________________________
> Zope-CMF maillist  -  Zope-CMF@zope.org
> http://lists.zope.org/mailman/listinfo/zope-cmf
> 
> See http://www.zope.org/Products/PTK/Tracker for bug reports and feature requests

-- 

   [] j a m k i t 
           
        seb bacon
T:  020 7749 7218
F:  020 7739 8683
M:  07968 301 336
W: www.jamkit.com