Re: [Exim] How to: exim + Oracle + Perl + DBI

Top Page
Delete this message
Reply to this message
Author: Thorkild Stray
Date:  
To: Philip Hazel
CC: exim-users
Subject: Re: [Exim] How to: exim + Oracle + Perl + DBI
On Wed, 25 Jul 2001, Philip Hazel wrote:

>The problem with all these database lookups is that Exim's design does not
>make it possible to use the database in an efficient manner. Each Exim
>process that issues a query has to set up a new connection to the
>database, do the lookup, and tear down the connection again. It is not
>possible to retain the connection over long periods, nor is it possible
>to prepare the query once, and re-use it again and again and again.


I've set up system using different kinds of databases, and faced this
problem. You really need a connection pool, and the program that does that
should also cache queries. Oracle, which was mentioned, really doesn't
like you logging in and out all the time.

I don't see why Exim should do this. Instead I would like to have a lookup
that interfaces which such a daemon. Bringing connection pooling and such
into Exim seems hard, and I am not sure you really earn that much by
combining the two (although I must admit the thought seems somewhat
usefull).

I've started work on trying out the sql relay software
(http://www.firstworks.com/sqlrelay.html) to do this.
Making a lookup that can interface with something like that, would seem
like abstracting this away from Exim, which I am not that against, really.

(btw: I don't know if the sql relay software is any good, so don't blame
me if it isn't and you try it in production. This is one of the goals of
my research. So don't blame me..;))

If anybody else have suggestions for good connection pool software which
would be suitable to integrate with Exim, I am very interested.

(You could use it without any modifications today, really, by using an
exim with perl compiled in. There exists a DBD::SQLrelay)

--
Thorkild