Re: [Exim] HELP! Exim processes are running away with 100+M…

Top Page
Delete this message
Reply to this message
Author: Philip Hazel
Date:  
To: Trevor Sky Garside
CC: Trevor Sky Garside, exim-users
Subject: Re: [Exim] HELP! Exim processes are running away with 100+MB of RAM, crashing my mail servers!
On Wed, 30 Jan 2002, Trevor Sky Garside wrote:

> Short story: it's fixed.


Good.

> I was transferring a rediculous amount of data from the MySQL server
> without realizing it. My 'local_domains' line was to blame:
>
> local_domains = "mysql;SELECT domain FROM user WHERE domain='$key'"
>
> I was getting 4000+ rows back each time, because almost every query was on
> the main domain. It looks like, even though Exim doesn't care what data
> it gets back, it fetches each row.


That's because the modules that implement the lookups don't know from
where they are being called. They always do the same job.

I confess that I never imagined people would store local_domains in
databases, because that list is consulted very frequently.

This has made me think about the possibility of a different lookup
interface that says "don't bother with the data", but in fact in Exim 4
things are different anyway. There is no longer a local_domains option;
instead there is more use of the "domains" option on routers. And for
that option, the data *is* required, because it gets put into the
$domain_data variable.


--
Philip Hazel            University of Cambridge Computing Service,
ph10@???      Cambridge, England. Phone: +44 1223 334714.