[Zodb-checkins] CVS: ZODB3/Doc - BDBStorage.txt:1.2.8.2
Tim Peters
tim.one at comcast.net
Wed Jun 23 21:41:28 EDT 2004
Update of /cvs-repository/ZODB3/Doc
In directory cvs.zope.org:/tmp/cvs-serv29865
Modified Files:
Tag: Zope-2_7-branch
BDBStorage.txt
Log Message:
Explain that BDB support has been dropped, and list some of the reasons.
I don't really care about this text file, but turns out this is the
source (after running thru docutils) of the page at
http://zope.org/Wikis/ZODB/BerkeleyStorageDocs/BDBStorage.html
and it's misleading to have the old text still there (I've replaced it
with the HTML generated from this new version of BDBStorage.txt).
Incidentally repaired the two places where docutils complained about this
input.
=== ZODB3/Doc/BDBStorage.txt 1.2.8.1 => 1.2.8.2 ===
--- ZODB3/Doc/BDBStorage.txt:1.2.8.1 Mon Sep 15 14:14:56 2003
+++ ZODB3/Doc/BDBStorage.txt Wed Jun 23 21:41:27 2004
@@ -1,6 +1,39 @@
BerkeleyDB Storages for ZODB
============================
+Support for Berkeley storages has been dropped
+----------------------------------------------
+
+This information in this writeup is of historical interest only.
+
+The Berkeley storages were an experiment, which turned out to create
+more problems than the community was able to solve. Support for these
+storages has been dropped, and the code has been removed from ZODB 3.3.
+There are good ideas worth pursuing here, but they require more work to
+make them production-quality. Problems include:
+
+- The usual range of bug reports against an immature implementation.
+ For example, reports of autopack not working, and of manual packing
+ never completing -- even reports of packing *increasing* storage
+ size.
+
+- A way to prevent unbounded growth of Berkeley log files, without
+ shutting down the app. This is apparently complicated due to that
+ the ZODB BDB storage implementations disable Berkeley DB's native locking
+ mechanisms (a large transaction could require more locks than bsddb
+ can provide).
+
+- The maze of incompatible Berkeley DB distributions on different
+ platforms. A striking example of this problem was that the ZODB
+ Berkeley tests died with segfaults if the platform had a more recent
+ version of Berkeley DB than the ZODB code was developed against.
+ There was a long history of version-specific ZODB BDB test failures
+ before that.
+
+- Tuning Berkeley DB for performance appeared complicated, difficult,
+ and necessary.
+
+
Introduction
------------
@@ -283,12 +316,12 @@
It is advantageous to automate this process, perhaps by creating a
script run by "cron" that makes use of the "db_archive" executable as
per the referenced document. One strategy might be to perform the
-following sequence of operations::
+following sequence of operations:
- shut down the process which is using BerkeleyDB (Zope or the ZEO
storage server).
-- back up the database files (the files prefixed with "zodb_").
+- back up the database files (the files prefixed with ``zodb_``).
- back up all existing BerkeleyDB log files (the files prefixed
"log").
More information about the Zodb-checkins
mailing list