[exim] dealing with a dead client machine

Top Page
Delete this message
Reply to this message
Author: Ross Boylan
Date:  
To: exim
CC: ross
Subject: [exim] dealing with a dead client machine
I am looking for advice about the best way to deal with mail that has
queued up because a destination machine died.

"biostat" = server running exim.
"iron" = machine to which mail is being delivered, also running exim.
Both are Debian Lenny.

When the biostat server recieves mail for me it checks my .forward file,
which most often executes
    deliver ross@???
Yes, we enabled domain literals.  Our local network is run by Windows
types who skipped DNS.


The target machine, aka iron, died, and lots of mail built up in the
biostat queue.

Eventually a new machine at a new IP will be ready to receive mail. I am
trying to recover the Cyrus mail store first.

We have upped the time on the retry rules, and believe we did so before
any delivery attempts timed out. My effort to test retry with exinext
ross@??? produces
R: domain_literal for ross@???
No retry data found for ross@???
which is odd; mail is definitely in the queue. I suspect the domain
literal is causing problems. If anyone can help with that sub-problem,
I'd appreciate it. I ran exinext as a regular, not admin, user.

Can I use a router to rewrite the destination (envelope recipient only)?

If not, I've seen advice to freeze the messages, add the new recipient
and delete the old one. Performing the operation over all relevant
messages will require a bit of scripting, and I'm not sure what happens
if a new message comes in while this is happening (I guess I should
change the .forward file first).

I could also switch the new machine to the old IP; I'm not sure how it
will react to that change. Because I have a bunch of aliases setup for
the new machine, I'd need to update a bunch of other stuff, or switch
the IP back after delivery.

Once the new machine is ready, what's the best way to trigger delivery?
exim -qff?

Finally, is there any change we should make to the routers on biostat,
or perhaps my .forward file there, to get it to hold delivery? I
recall seeing a FAQ on this, but couldn't find it today.

One other point is that the messages go through a lot of sorting for
delivery to folders on the final machine (formerly iron). Because of
this, I am resisting solutions of the "just send it all to a folder"
variety.

Thanks.
Ross Boylan

Please cc me, as personally addressed mail gets final delivery to the
biostat server and so won't be hit by my outage.