It never fails (bsddb retirement in 2.3)

Skip Montanaro skip at pobox.com
Sun May 4 13:33:46 EDT 2003


    >> p1: Berkeley DB 1.85 (Hash, version 2, native byte-order)
    >> p2: Berkeley DB (Hash, version 7, native byte-order)

    Martin> I'm quite certain that the library used to create p1 is *not*
    Martin> BSDDB 1.85. Instead, it is Sleepycat BSDDB 2. However it appears
    Martin> that this specific release creates the same file format that
    Martin> BSDDB 1.85 did.

I don't think so.  There is some information on the Sleepycat website about
when file versions changed, though not what they changed from/to:

    http://www.sleepycat.com/download/patchlogs.shtml

When I tried the experiment of building bsddb185 the other day as

    bsddb185 bsddbmodule.c

in Modules/Setup, the file it created was a Version 2 file.  Here's a replay
of that experiment:

    % ./python.exe 
    Python 2.3b1 (#2, May  2 2003, 09:41:56) 
    [GCC 3.1 20020420 (prerelease)] on darwin
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import bsddb185
    [32065 refs]
    >>> db = bsddb185.hashopen("martin.db", "c")
    [32069 refs]
    >>> db.close()
    [32069 refs]
    >>> 
    [32069 refs]
    [6984 refs]
    % file martin.db
    martin.db: Berkeley DB Hash file (Version 2, Big Endian, Bucket Size 4096, Bucket Shift 12, Directory Size 256, Segment Size 256, Segment Shift 8, Overflow Point 1, Last Freed 2, Max Bucket 1, High Mask 0x3, Low Mask 0x1, Fill Factor 65536, Number of Keys 0)

Skip





More information about the Python-list mailing list