[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