Zope/python process borked, so I kill -9'd it. Now it seems like that broke a few things in zodb. Zope will start up though and most things are OK. So I executed fstest.py and got this output among others: 862903 object serialno 0x034ab50f9b84f008 does not matchtransaction id 0x034ae7d 5858d5455 So my assumption is that something is wrong with the database, so I wanted to run fsrecover.py: lib/python/ZODB# python fsrecover /tmp/Data.fs /tmp/newData.fs Traceback (most recent call last): ... File "/usr/local/Zope/lib/python/ZODB/Connection.py", line 50, in ? ExtensionKlass=Base.__class__ AttributeError: __class__ I'm not able to run fsrecover. I use Zope 2.6.2 - what should I do? Are there better recovery tools? Tim
Hello If I remember correctly from my experiences, several Zodb tools are broken is several zope version, it's a little bit like a maze game: you have to look arround :-) Have a look in the mailing list archive to find more on this, I would advise to try a fsrecover from an older zope version (<2.5 ?) Gilles ----- Original Message ----- From: "Tim Terlegård" <tim@se.linux.org> To: <zope@zope.org> Sent: Tuesday, January 27, 2004 12:20 AM Subject: [Zope] Corrupt Data.fs
Zope/python process borked, so I kill -9'd it. Now it seems like that broke a few things in zodb. Zope will start up though and most things are OK.
So I executed fstest.py and got this output among others: 862903 object serialno 0x034ab50f9b84f008 does not matchtransaction id 0x034ae7d 5858d5455
So my assumption is that something is wrong with the database, so I wanted to run fsrecover.py:
lib/python/ZODB# python fsrecover /tmp/Data.fs /tmp/newData.fs Traceback (most recent call last): ... File "/usr/local/Zope/lib/python/ZODB/Connection.py", line 50, in ? ExtensionKlass=Base.__class__ AttributeError: __class__
I'm not able to run fsrecover. I use Zope 2.6.2 - what should I do? Are there better recovery tools?
Tim
_______________________________________________ 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 )
If I remember correctly from my experiences, several Zodb tools are broken is several zope version, it's a little bit like a maze game: you have to look arround :-)
It worked after setting PYTHONPATH correclty. Now I've managed to run fsrecover.py. My original and faulty Data.fs was 170 MB. After fsrecover the new database file is 4 bytes. That's not what I was hoping for :) I got _lots_ of __main__.ErrorFound: invalid status, , at XXXXX messages during fsrecover. Seems like everything is corrupt. But surprisingly there are only a very few objects/templates that raise exceptions and most of the site works fine. How come? One of the errors I get on the site now is: AttributeError: isPortalContent Ideas? Tim
On Tue, Jan 27, 2004 at 03:43:57PM +0100, Tim Terleg?rd wrote:
If I remember correctly from my experiences, several Zodb tools are broken is several zope version, it's a little bit like a maze game: you have to look arround :-)
It worked after setting PYTHONPATH correclty. Now I've managed to run fsrecover.py. My original and faulty Data.fs was 170 MB. After fsrecover the new database file is 4 bytes. That's not what I was hoping for :)
I got _lots_ of __main__.ErrorFound: invalid status, , at XXXXX messages during fsrecover. Seems like everything is corrupt. But surprisingly there are only a very few objects/templates that raise exceptions and most of the site works fine. How come?
One of the errors I get on the site now is: AttributeError: isPortalContent Ideas?
I would suggest taking this thread to zodb-dev@zope.org. They've been helpful when I had corruption issues. -- Paul Winkler http://www.slinkp.com Look! Up in the sky! It's NON-NATIVE BONER SALESMAN! (random hero from isometric.spaceninja.com)
Tim Terlegård wrote at 2004-1-27 15:43 +0100:
If I remember correctly from my experiences, several Zodb tools are broken is several zope version, it's a little bit like a maze game: you have to look arround :-)
It worked after setting PYTHONPATH correclty. Now I've managed to run fsrecover.py. My original and faulty Data.fs was 170 MB. After fsrecover the new database file is 4 bytes. That's not what I was hoping for :)
You happened to get a broken "fsrecover".
I got _lots_ of __main__.ErrorFound: invalid status, , at XXXXX messages during fsrecover. Seems like everything is corrupt. But surprisingly there are only a very few objects/templates that raise exceptions and most of the site works fine. How come?
Old Zope database files contain ancient transaction records that cause "fsrecover" (I speak of a correct not a broken version!) to issue lots of warnings. Ignore them...
One of the errors I get on the site now is: AttributeError: isPortalContent Ideas?
Look at the traceback! "AttributeError" usually do not indicate a corrupted database (although they may in rare cases). -- Dieter
I just had this exact problem. I use Zope 2.6.1 So i tried other versions of fsrecover on Data.fs 2.6.4rc1 3.6.3 2.6.2 2.6.0 All result in a POSKeyError like Dominik Sch�fer is currently having 2.6.1 2.5.1 Truncates the file to 4kb. 2.4.4 Reports nothing to recover. Is it just me? or are all versions of fsrecover no good? Im about to try this now, maybe itll help me or the original author of this thread, even though Dominik had no such luck. http://www.zopelabs.com/cookbook/1054240694 --- Dieter Maurer <dieter@handshake.de> wrote:
Tim Terleg�rd wrote at 2004-1-27 15:43 +0100:
If I remember correctly from my experiences, several Zodb tools are broken is several zope version, it's a little bit like a maze game: you have to look arround :-)
It worked after setting PYTHONPATH correclty. Now I've managed to run fsrecover.py. My original and faulty Data.fs was 170 MB. After fsrecover the new database file is 4 bytes. That's not what I was hoping for :)
You happened to get a broken "fsrecover".
I got _lots_ of __main__.ErrorFound: invalid status, , at XXXXX messages during fsrecover. Seems like everything is corrupt. But surprisingly there are only a very few objects/templates that raise exceptions and most of the site works fine. How come?
Old Zope database files contain ancient transaction records that cause "fsrecover" (I speak of a correct not a broken version!) to issue lots of warnings. Ignore them...
One of the errors I get on the site now is: AttributeError: isPortalContent Ideas?
Look at the traceback!
"AttributeError" usually do not indicate a corrupted database (although they may in rare cases).
-- Dieter
_______________________________________________ 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 )
__________________________________ Do you Yahoo!? Yahoo! SiteBuilder - Free, easy-to-use web site design software http://sitebuilder.yahoo.com
Declan Shanaghy wrote at 2004-1-29 13:40 -0800:
I just had this exact problem. I use Zope 2.6.1 So i tried other versions of fsrecover on Data.fs
2.6.4rc1 3.6.3 2.6.2 2.6.0 All result in a POSKeyError like Dominik Schäfer is currently having
"fsrecover" cannot fix "POSKeyError"s. In fact, there is no way to fix "POSKeyError"s automatically. A "POSKeyError" corresponds to an object reference to a non-existing object. There is not way to recreate the original object. As the storage level does not know anything about the application object, it cannot simply remove the stale reference (without the risk to introduce other inconsistencies). The only way would be to let the stale reference point to a fake object that says "I am a representative of a lost object". "fsrecover" can introduce "POSKeyError"s for objects that happen to be defined in damaged transaction records. Such objects are lost due to the elimination of the damaged transaction record. You should *REALLY* make regular backups! "fsrecover" is a tool that tries to help in a desaster situation. However, it is far from perfect! Make backups! -- Dieter
Tim Terlegård wrote at 2004-1-27 00:20 +0100:
Zope/python process borked, so I kill -9'd it. Now it seems like that broke a few things in zodb. Zope will start up though and most things are OK.
So I executed fstest.py and got this output among others: 862903 object serialno 0x034ab50f9b84f008 does not matchtransaction id 0x034ae7d 5858d5455
This is not a serious problem. I would ignore it. -- Dieter
participants (5)
-
Declan Shanaghy -
Dieter Maurer -
Gilles Lavaux -
Paul Winkler -
Tim Terlegård