[exim] Retry mechanism does not let old mail to go to fallba…

Top Page
Delete this message
Reply to this message
Author: Cronfy
Date:  
To: exim-users
Subject: [exim] Retry mechanism does not let old mail to go to fallback host
Hello.

We are using several servers in out mail system. One of it is Main Relay,
that sends mail out, one is MX, that receives and one is Fallback Relay,
that delivers messages, that Main Relay could not deliver after an hour.
We do it in this way to make Main Relay queue shorter.

There is delay router in Main Relay configuration that does this job:

delay:
driver = manualroute
transport = remote_smtp
condition = ${if > {$message_age}{3600}{1}{0}}
route_list = * fb1.z8.ru
no_more

All messages older than 1 hour go to Fallback Relay.

Suddenly I noticed there are many messages it the Main Relay queue older
than 1,2,5 hours. I've found these lines in the log files:

2007-09-25 14:18:58 1IWmdT-0000NC-Av == mailer-daemon@??? routing defer (-51): retry time not reached

There are a lot of such lines for each of these messages, showing that Exim
did not even try to route the message, because it's host retry time did not
come yet.

This means that if we have 1000 such similar messages, Exim will try
to deliver one of it from time to time, and then it will skip all other
messages until next retry time comes. Exim does not even try to route
it to Fallback Relay - no routing is done in this case.

It all makes Main Relay queue to grow.

Is there a way to make Exim route these messages if they are old, without
dependng on their retry times?

Thanks in advance.

--
Cronfy.