[ZODB-Dev] Preventing a folder from being packed
Shane Hathaway
shane at zope.com
Fri May 16 00:28:02 EDT 2003
On 05/15/2003 07:24 PM, Toby Dickenson wrote:
> On Thursday 15 May 2003 6:48 pm, sean.upton at uniontrib.com wrote:
>>My thinking is that this is what DBTab is likely the solution for: mount a
>>different storage for every containment hierarchy in Zope that needs
>>specific performance, feature, and pack capability sets? Would this not be
>>a more simple solution?
>
>
> Maybe if you only have a few such containment hierarchies - maybe not if you
> have 100's
I'd just like to add that DBTab allows you to mount a database any
number of times. If you have many independendent folders that should
retain history, for each folder you can make a mount point that points
to a different part of the same database. So you'd really only need two
databases, "packed" and "non-packed".
Echoing Sean's point, at ZC we have lately followed a pattern of using
mounted databases because different parts of the object system have
different database requirements. Catalogs, sessions, and Wikis all get
mounted for different reasons. Packing characteristics are only one
dimension.
I agree, though, that you could retain history without too much trouble
if the work is done during packing. I wasn't happy with the idea of
marking whole transactions as permanent, but retaining any object
reachable from particular roots could be useful. I'm curious about a
couple of edge cases: if the user deletes an ExtraHistoryFolder, does it
(and its children) ever get packed away? It seems like it shouldn't,
since the user may later undo the deletion, but in reality the user may
have intended for it to vanish for real. And what do you do if an
ExtraHistoryFolder (with children) gets uncreated? :-)
Shane
More information about the ZODB-Dev
mailing list