[Zope-dev] Zope-2.7.3, Ape-1.0+ (from cvs) and mysql 4.0.20 raises UnpicklingError

jcc at umd.es jcc at umd.es
Thu Nov 18 12:23:27 EST 2004

Hi all,

I have spent over two days testing the Ape product, and all the time I
become the error UnpicklingError,  unpickling stack underflow .

Here are my results:

- Using a filesystem database works fine.
- Since mysql creates the tables as myisam (non-transactional) per
default after some failed tests I tweaked the code, so that the tables
are created as InnoDB.
- I have tried a fresh installed zope.
- I have put some LOG statements into the code and here is the log:

2004-11-18T18:00:58 INFO(0) ZODB conflict error at
/sql/manage_addProduct/OFSP/addDTMLMethod (1 conflicts since startup at
2004-11-18T18:00:59 INFO(0) apelib.zodb3.connection.setstate p = (dp1
S'class_name' p2 S'OFS.Folder.Folder' p3 sS'mapper_name' p4 S'folder' p5
s.(dp6 S'modtime' p7 L1100797193L sS'items' p8 (lp9 sS'id' p10 S'sql'
p11 sS'security' p12 (lp13 (S'executable-owner' S'' S''
S'acl_users/jcoruna' tp14 a(S'local-role' S'Owner' S'' S'jcoruna' tp15
asS'remainder' p16 S"array('c')" p17 sS'properties' p18 (lp19 (S'title'
p20 S'string' p21 S'' tp22 as.
2004-11-18T18:00:59 INFO(0) zodb3.serializers.RemainingState.deserialize
state = array('c')
2004-11-18T18:00:59 ERROR(200) ZODB Couldn't load state for '5'
Traceback (most recent call last):
line 360, in setstate
    event = osio.deserialize(oid, obj, classification, state)
  File "/usr/lib/zope/lib/python/Products/Ape/lib/apelib/core/io.py",
line 160, in deserialize
    mapper.serializer.deserialize(event, state)
line 121, in deserialize
    s.deserialize(event, state)
line 293, in deserialize
    s = u.load()
UnpicklingError: unpickling stack underflow

I think that the problem is that ape tries to unpickle the string
"array('c')" and fails.

Any clues?

Sorry for the long post, but I think it's worth the length.

More information about the Zope-Dev mailing list