[Zope] Corrupted Data.fs
Alastair Burt
burt@dfki.de
05 Nov 2001 14:00:22 +0100
My Data.fs seems to be in a truly sorry state. When I try to start up
Zope, I get the following in my log file:
2001-11-05T09:35:31 PANIC(300) z2 Startup exception
Traceback (innermost last):
File /home/burt/lib/zope/Zope-2.3.2-src/z2.py, line 566, in ?
File <string>, line 1, in ?
File /home/burt/Desktop/Zope/Zope-2.3.2-src/lib/python/Zope/__init__.py, line 110, in ?
File ./FileStorage.py, line 308, in __init__
(Object: /home/burt/etc/zope/instance_home1/var/Data.fs)
File ./FileStorage.py, line 1694, in read_index
File ./FileStorage.py, line 219, in panic
CorruptedTransactionError: /home/burt/etc/zope/instance_home1/var/Data.fs redundant transaction length check failed at 46128576
When I try fsrecover, I get:
Traceback (most recent call last):
File "/home/burt/lib/zope/Zope-2.3.2-src/lib/python/ZODB/fsrecover.py", line 94, in ?
FileStorage.recover(sys.argv[1])
File "/home/burt/lib/zope/Zope-2.3.2-src/lib/python/ZODB/FileStorage.py", line 1537, in recover
npos = shift_transactions_forward(
File "/home/burt/lib/zope/Zope-2.3.2-src/lib/python/ZODB/FileStorage.py", line 1420, in shift_transactions_forward
seek(pos)
OverflowError: long int too long to convert
When I try tranalyzer, I get:
Traceback (most recent call last):
File "/home/burt/Desktop/Clutter/tranalyzer.py", line 333, in ?
main(sys.argv)
File "/home/burt/Desktop/Clutter/tranalyzer.py", line 325, in main
t = Transaction(f, off, refs)
File "/home/burt/Desktop/Clutter/tranalyzer.py", line 179, in __init__
raise ValueError, 'transaction lengths mismatch'
ValueError: transaction lengths mismatch
I can use tranalyzer to chop the Data.fs down to the transaction before
byte 46128576. But there are 2 MB of transactions after that. Do I have to
throw all this data away?
--- Alastair