It never fails (bsddb retirement in 2.3)

"Martin v. Löwis" martin at v.loewis.de
Sun May 4 13:52:38 EDT 2003


Skip Montanaro wrote:

> 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

Very interesting. Here is how I got my results:

- I checked what libraries the Redhat 7.2 bsddbmodule.so links with.
   It links with both db3-3.2 and db2. Setting a breakpoint on dbopen
   shows that the function from db2.so is used. That indicates, to me,
   that their bsddbmodule.so uses BSDDB 2. The resulting database file
   is identified as bsddb 1.85, Version 2 file, by my version of file(1).
- I downloaded the Redhat db1 package, and used it to create a file.
   The resulting file is identified as the same database file.
   Assuming that the Redhat db1 package indeed uses the code of
   bsddb 1.85, I conclude that the magic of the file doesn't change
   between BSDDB 1.85 and BSDDB 2.

That is no direct contradiction with the Sleepycat page, assuming you 
refer to the "Requires database format upgrade" text next to "2.0.0".
It might be that an upgrade is needed, even though the magic does not 
change.

> 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.  

So what BSDDB library have you been using here?

Regards,
Martin







More information about the Python-list mailing list