It never fails (bsddb retirement in 2.3)

Nick Vargish nav at adams.patriot.net
Thu May 1 14:00:21 EDT 2003


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

-- 
# sigmask.py  ||  version 0.2  ||  2003-01-07  ||  Feed this to your Python.
print reduce(lambda x,y:x+chr(ord(y)-1),'Ojdl!Wbshjti!=obwAqbusjpu/ofu?','')




More information about the Python-list mailing list