[ZPatterns] [TFW] [Zope] Problems using fsrecover.py from 2.5.1 with 2.4.3?

Jean Jordaan jean@upfrontsystems.co.za
Wed, 1 May 2002 15:26:14 +0200


Hi all

I'm attempting to diagnose a Data.fs that might be wonky. I'm
sending a record of my attempt to the list in the hope that
other people are better at interpreting the results than I am.

It was written by this Zope:

 $ cat ./lib/python/version.txt
 Zope 2.4.3 (binary release, python 2.1, linux2-x86)

The fsrecover.py I'm using comes from:

 Zope 2.5.1b1 (source release, python 2.1, linux2)

I get 710849 errors like this:

 __main__.ErrorFound: invalid status, ^@, at 179898912
 __main__.ErrorFound: invalid status, ^@, at 179898995

2068 errors like this:

 __main__.ErrorFound: bad transaction length at 231384331

57 errors like this:

 exceptions.SystemError: Failed to import class Trigger from module
Products.ZPatterns.SkinScript.Components

39 errors like this:

 __main__.ErrorFound: invalid status, , at 33731550

with status values such as , ^R, <, , , ...

3 errors like this:

 ZODB.POSException.ConflictError: ('\x03C\x96\xf4\xeb\xb3\xe1\x00',
'\x03C\x04\xb0\xf8\xa2\xe7\xb3')

2 errors like this:

 exceptions.KeyError: ^@^@^@^@^@^C0\

2 errors like this:

 exceptions.ImportError: cannot import name NullProvider

1 error like this:

 exceptions.ImportError: cannot import name Factory

and fsrecover finishes with the message:

 139059006 bytes removed during recovery

Before: 242946201 Apr  9 16:05 Data.fs
After:  103887195 May  1 14:39 Data.fs.fsrecover

I can start a Zope on the "recovered" Data.fs without problems,
and access it through a browser. It works fine, until I try
to access certain ZClasses stored on Racks (eg. 'License'
instances raise KeyErrors, 'Customer' instances are fine). Then
I get KeyErrors, with this in the log:

------
2002-05-01T13:14:11 ERROR(200) ZODB Couldn't load state for
'\x00\x00\x00\x00\x00\x03O\xf8'
Traceback (innermost last):
  File /usr/local/zope/2-4-3/lib/python/ZODB/Connection.py, line 519, in
setstate
  File /usr/local/zope/2-4-3_for_diepdink/lib/python/ZODB/FileStorage.py,
line 588, in load
    (Object:
/home/httpd/zope-instances/jean/creme.rel-0_9_0-branch/var/Data.fs)
  File /usr/local/zope/2-4-3_for_diepdink/lib/python/ZODB/FileStorage.py,
line 564, in _load
    (Object:
/home/httpd/zope-instances/jean/creme.rel-0_9_0-branch/var/Data.fs)
KeyError: O
------

For the record, during startup, Zope warns:

 WARNING: Python C API version mismatch for module DynPersist:
   This Python has API version 1010, module DynPersist has version 1007.

We haven't been able to successfully recompile the dynpersist module,
so we've been ignoring the warning.

--
Jean Jordaan
Upfront Systems                         http://www.upfrontsystems.co.za



_______________________________________________
Zope maillist  -  Zope@zope.org
http://lists.zope.org/mailman/listinfo/zope
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-announce
 http://lists.zope.org/mailman/listinfo/zope-dev )