It never fails (bsddb retirement in 2.3)

John Abel johnfabel at btinternet.com
Thu May 1 14:53:09 EDT 2003


Hi,

According to the What's New page for 2.3 
(http://python.org/doc/2.3b1/whatsnew/node18.html):

The bsddb module has been replaced by version 4.1.1 of the PyBSDDB 
<http://pybsddb.sourceforge.net> package, providing a more complete 
interface to the transactional features of the BerkeleyDB library. The 
old version of the module has been renamed to bsddb185 and is no longer 
built automatically; you'll have to edit Modules/Setup to enable it. 
Note that the new bsddb package is intended to be compatible with the 
old module, so be sure to file bugs if you discover any 
incompatibilities. When upgrading to Python 2.3, if you also change the 
underlying BerkeleyDB library, you will almost certainly have to convert 
your database files to the new version. You can do this fairly easily 
with the new scripts db2pickle.py and pickle2db.py which you will find 
in the distribution's Tools/scripts directory. If you've already been 
using the PyBSDDB package and importing it as bsddb3, you will have to 
change your |import| statements.

Still install Python, still be happy?

HTH

John


Nick Vargish wrote:

>So I'm trying to get Python accepted here at work (a large US
>government office). One of my tasks is to rewrite a number of legacy C
>programs in a language largely of my choice. I have my supervisor on
>board with the idea of Python, and he's even looking into us taking
>classes from ActiveState or PythonLabs or whoever offers such
>things...
>
>A number of these old programs rely on a large text file to determine
>where to go for more information. They do a linear line-based search
>in this 750Kb file. They do this every time someone asks the server
>for a document.
>
>A couple of weeks ago I figure I can make up the loss of efficiency
>from invoking Python (compared to a native binary) by replacing this
>linear search with a bsddb lookup. The code will generate a fresh .db
>file if the text file changes, since the text file is edited by hand
>about twice a day.
>
>Today I decide to make sure the 2.3 beta works with the programs I've
>written... *sigh*  Of course, this is the time for the built-in bsddb
>module to be retired.
>
>What's aggravating is that now my directions go from:
>
>o install Python, be happy
>
>To:
>
>o Install DB from SleepyCat
>o now install Python
>o finally install bsddb3 from Sourceforge.
>
>So much for batteries included... Is there some other package that
>comes with 2.3 that I could be using, that will use the libdb.a that
>the version of Unix we're using comes with? (OSF 5.1, aka Digital
>Unix, if you really must know.)
>
>I think I understand the reason for retiring the included bsddb, but
>it's not going to make my work of getting Python accepted any easier.
>
>Thanks for any pointers, hope I didn't rant excessively...
>
>Nick
>
>  
>






More information about the Python-list mailing list