[Zope] Re: [Dirstorage-users] Re: [Zope-Annce] DirectoryStorage 1.1.0

Toby Dickenson toby@tarind.com
Sat, 12 Apr 2003 11:06:14 +0100


On Friday 11 April 2003 17:08, Fred Yankowski wrote:
> On Fri, Apr 11, 2003 at 11:51:42AM +0100, Toby Dickenson wrote:
> > I am pleased to announce the release of DirectoryStorage version 1.1.0.
>
> I'm not able to convert an existing Data.fs into DirectoryStorage
> data using the conversion script given in the FAQ:  it fails with an
> exception on the copyTransactionsFrom() call:
>
> 	restore() takes exactly 6 arguments (7 given)
>
> It looks like the FileStorage.restore() function in Zope 2.6.1 has a
> 'prev_txn' parameter with no counterpart in
> DirectoryStorage.Full.restore().

Untested, but try this:

Index: Full.py
===================================================================
RCS file: /cvsroot/dirstorage/DirectoryStorage/Full.py,v
retrieving revision 1.33
diff -c -1 -r1.33 Full.py
*** Full.py     24 Feb 2003 12:01:23 -0000      1.33
--- Full.py     12 Apr 2003 10:05:50 -0000
***************
*** 86,88 ****

!     def restore(self, oid, serial, data, version, transaction):
          # The following comment taken from FileStorage:
--- 86,88 ----

!     def restore(self, oid, serial, data, version, prev_txn, transaction):
          # The following comment taken from FileStorage:
***************
*** 102,103 ****
--- 102,107 ----
          #   (i.e. one who's creation has been transactionally undone).
+         #
+         # - prev_txn is a hint that an identical pickle has been stored
+         #   for the same oid in a previous transaction. Some other storages
+         #   use this to enable a space-saving optimisation. We dont.
          #