On Nov 2, 2007, at 5:48 AM, Lennart Regebro wrote:

On 11/1/07, Matt Hamilton <[EMAIL PROTECTED]> wrote:
An interesting idea. Surely we need the opposite though, and that is an additional BTree with a very large bucket size, as we want to minimize the chance of a bucket split when inserting? Then we occasionally consolidate and move the items in the original BTree with the regular bucket size/ branch factor.

Would it be possible to not "occasionally" consolidate, but actually
do it ongoing, but just one process, thereby always inserting just one
transaction into the normal BTree at a time? Or does that cause
troubles?

I think that option would work.  I think it would suffice to do a
"Big.update(Small); Small.clear()" operation before a nightly pack.
It might invalidate every bucket in every cache, but BTrees are
designed to perform reasonably without a cache.







_______________________________________________
For more information about ZODB, see the ZODB Wiki:
http://www.zope.org/Wikis/ZODB/

ZODB-Dev mailing list  -  ZODB-Dev@zope.org
http://mail.zope.org/mailman/listinfo/zodb-dev

Reply via email to