On Wed, Jun 19, 2002 at 05:27:06PM -0500, Skip Montanaro wrote:
>> Why can't it just be called bsddb?
Greg> Modern berkeleydb uses much different on disk database formats, Greg> glancing at the docs on sleepycat.com i don't even think it can Greg> read bsddb (1.85) files.
That's never stopped us before. ;-) The current bsddb module works with versions 1, 2, 3, and 4 of Berkeley DB using the 1.85-compatible API that Sleepycat provides. It's always been the user's responsibility to run the appropriate db_dump or db_dump185 commands before using the next version of Berkeley DB. Using the library from Python never removed that requirement.
Good point. I was ignorant of the original bsddb 1.85 module workings as i never used it. Pybsddb backwards compatibility was implemented (not be me) by with the intention that it could be used as a replacement for the existing bsddb module. It passes the simplistic test_bsddb.py that is included with python today as well as pybsddb's own test_compat.py to test the compatibility layer. If we replace the existing bsddb with pybsddb (bsddb3), it should work. If there are hidden bugs that's what the alpha/beta periods are for. However linking against berkeleydb versions less than 3.2 will no longer be supported; should we keep the existing bsddb around as oldbsddb for users in that situation? -G