What is the file size of the Data.fs file? Did you try stopping zope, removing the Data.fs.index file and starting it again?
Apologies if this is not the right forum
I have a corrupt Data.fs file and would appreciate some help recovering data.
Zope 2.4 (still in the Stone Age) OS: Windows 2003 server Runs as service
The problem was first noticed yesterday on trying to save a web page after making changes. Received the following error message. IOError: (0, 'Error')
I tried the following
Restating the Zope service with the following results - Starts and stops immediately
Start the Zope service using "start.bat" get the following
D:\civil>start.bat ------ 2008-04-14T23:20:34 PROBLEM(100) Init Ambiguous name for method of Products.Pyth onMethod.PythonMethod.PythonMethod: "manage" != "manage_main" ------ 2008-04-14T23:20:35 PROBLEM(100) Init Ambiguous name for method of Products.ZDat aQueryKit.ZVisualODBCClient.ZVisualODBCClient: "manage_propertiesForm" != "manag e_main" ------ 2008-04-14T23:20:35 PROBLEM(100) Init Ambiguous name for method of Products.ZDat aQueryKit.ZVisualODBCClient.ZVisualODBCClient: "manage_propertiesForm" != "manag e_main" ------ 2008-04-14T23:20:35 PANIC(300) z2 Startup exception Traceback (innermost last): File D:\civil\z2.py, line 564, in ? File <string>, line 1, in ? File D:\civil\lib\python\Zope\__init__.py, line 110, in ? File D:\civil\lib\python\ZODB\FileStorage.py, line 311, in __init__ (Object: D:\civil\var\Data.fs) File D:\civil\lib\python\ZODB\FileStorage.py, line 1747, in read_index IOError: (0, 'Error')
Running tranalyzer.py and at some stage I get the following
31166 91405999210488 Traceback (most recent call last): File "lib/python/ZODB/tranalyzer.py", line 333, in ? main(sys.argv) File "lib/python/ZODB/tranalyzer.py", line 325, in main t = Transaction(f, off, refs) File "lib/python/ZODB/tranalyzer.py", line 170, in __init__ self.obs.append(Record(f, refs)) File "lib/python/ZODB/tranalyzer.py", line 214, in __init__ data = f.c(dl - 8) File "lib/python/ZODB/tranalyzer.py", line 105, in c self.checkleft(n) File "lib/python/ZODB/tranalyzer.py", line 87, in checkleft raise 'Not enough data left, %d < %d' % (self.left, n) Not enough data left, 31166 < 91405999210488
Running fsrecover.py get the following
D:\civil>bin\python lib/python/ZODB/fsrecover.py var/Data.fs Traceback (most recent call last): File "lib/python/ZODB/fsrecover.py", line 94, in ? FileStorage.recover(sys.argv[1]) File "D:\civil\lib\python\ZODB\FileStorage.py", line 1721, in recover pos, oid, tid = read_index( File "D:\civil\lib\python\ZODB\FileStorage.py", line 1747, in read_index file_size=file.tell() IOError: (0, 'Error')
D:\civil>bin\python lib/python/ZODB/fsrecover.py Traceback (most recent call last): File "lib/python/ZODB/fsrecover.py", line 94, in ? FileStorage.recover(sys.argv[1]) IndexError: list index out of range
Please help!!
Thanks Godwin
_______________________________________________ Zope maillist - Zope@zope.org http://mail.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope-dev )
-- Martijn Jacobs Four Digits, Internet Solutions a: Willemsplein 15-1 6811 KB Arnhem NL kvk: 091621370000 | btw: 8161.22.234.B01 e-mail: martijn@fourdigits.nl | web: http://www.fourdigits.nl tel: +31 (0)26 44 22 700 | fax: +31 (0)84 22 06 117