Traduisez - Übersetzen - Traduzca - Traduza - Tradurre - Translate

Database packages

Ted Powell (ted@wimsey.com)
Thu, 15 Aug 1996 10:52:16 -0700 (PDT)

Rick Morlang wrote:
>
> On Wed, 14 Aug 1996, Ted Powell wrote:
> > [...discussion of mod to the Linux makefile for the Berkeley DB
> > database library...]
> > More to the point, I made this change on 27 July, linked the resulting
> > library into Perl 5.003, and have lived happily ever after. :-)
>
> Great! I'm also considering using mSQL at this point, which seems to be
> working so far.. So many database packages, so little time, no idea which
> one I need. ;-) Fun!

I've been told (but have not taken the time to check) that mSQL
misbehaves when databases get over-large.

If you haven't already, you should take a look at:
http://www.genome.wi.mit.edu/genome_software/other/boulder.html
which describes, and has a download link for, a set of Perl5 modules.
Among other things, you get a nice interface layer to Berkeley DB.
Note: This interface lets you store arbitrary binary data (GIFs and
JPEGs, in my case) _provided_ that you have my patches. I've forwarded
them to the author, but he hasn't had time to integrate them yet.
Since they aren't very big, here they are:

=== Changes to Stream.pm ===
248c248
< return $toencode unless $self->{binary};

---
>     return $toencode unless $s->{binary};
256c256
<     return $toencode unless $self->{binary};
---
>     return $toencode unless $s->{binary};
274c274
<     return $todecode unless $self->{binary};
---
>     return $todecode unless $s->{binary};

=== Change to Store.pm === 51c51 < 'record_stop'=>undef,

---
>       'record_stop'=>"\n",

These changes relate to the August 1995 versions of the files. Enjoy!

P.S. If you don't already have the same author(Lincoln Stein)'s CGI.pm module for doing CGI stuff in Perl5, you really should. See: http://www-genome.wi.mit.edu/ftp/pub/software/WWW/ This is version 2.23; I've been using version 2.21 so far. (Pause while I download and unpack the new version.) Hmm. He's been busy. Even if you have 2.21, you should get 2.23 (he advises against 2.22--buggy). The most notable new thing I've seen so far is support for FastCGI. Here is a brief description:

<a href="http://www.fastcgi.com">FastCGI</a> is a protocol invented by OpenMarket that markedly speeds up CGI scripts under certain circumstances. It works by opening up the script at server startup time and redirecting the script's IO to a Unix domain socket. Every time a new CGI request comes in, the script is passed new parameters to work on. This allows the script to perform all its time-consuming operations at initialization time (including loading CGI.pm!) and then respond quickly to new requests.

<p>

FastCGI modules are available for the Apache and NCSA servers as well as for OpenMarket's own server. In order to use FastCGI with Perl you have to run a specially-modified version of the Perl interpreter. Precompiled Binaries and a patch kit are all available on OpenMarket's FastCGI web site.

This is something I've been wanting. Should be _really_ interesting...

-- 
ted@wimsey.com  ted@eslvcr.wimsey.com  (Ted Powell)
http://www.wimsey.com/~ted/
Key fingerprint =  B0 E8 43 11 1B 6F A9 DA  FB 8A 89 64 1C C8 A8 E3 
Junk email? See: http://math-www.uni-paderborn.de/~axel/BL/blacklist.html