[Zope-dev] Re: Help! Getting there, I hope ...

Tres Seaver tseaver at palladion.com
Fri Sep 1 10:53:25 EDT 2006


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Kris Adcock wrote:
> Right, many thanks to those who have offered advice. I'm conscious that as
> I've drifted from a coding topic then I'm probably in the wrong mailing list,
> but everyone has been very patient up to now and I'm hoping that a fix is in
> sight! :)
> 
> I have done a backup of the Dats.fs file (took three days!). I have used
> fsdump and fstest to produce listings about my Data.fs file - fsdump produced
> a 2.67GB textfile! I have tracked down the first entry that I believe begins
> all the deletes:
> 
> tid=0367c03fc4325022 time=2006-08-26 08:31:45.983563 offset=749481328632
>  user= admin description=/library/reference/manage_delObjects
>  
> If I'm right ... does that mean if I trim the Data.fs file to 749481328632
> bytes long and start Zope off again, that the files should be restored? If
> so, does anyone know of a good way of trimming such a large binary file down
> to a specific size? I'm using Suse Linux as a server.

I would use the ZODB's 'copyTransactionsFrom' here.  Something like the
following (untested)::

 from ZODB.FileStorage import FileStorage

 old_fs = FileStorage('/path/to/backup_Data.fs', read_only=True)
 iter = old_fs.iterator(stop='2006-08-26 08:31:45.983563')
 new_fs = FileStorage('/path/to/truncated_Data.fs', create=True)
 new_fs.copyTransactionsFrom(iter)
 new_fs.close()
 old_fs.close()


Tres.
- --
===================================================================
Tres Seaver          +1 202-558-7113          tseaver at palladion.com
Palladion Software   "Excellence by Design"    http://palladion.com
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2.2 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFE+Ell+gerLs4ltQ4RAlH3AJ9dhknpenEnFDMS7U4gf3c2QaKHRgCgpa85
hKZQ42Lg860OSh2AWWRvs0w=
=AIRi
-----END PGP SIGNATURE-----



More information about the Zope-Dev mailing list