On Sun, 3 Oct 1999, Ben Smithurst wrote:
> Randy Bush wrote:
>
> >> How about `rm /var/spool/exim/db/retry.*` ? That will destroy all the
> >> retry hints, so the next delivery attempt won't see them.
> >
> > this is actually save to do?
>
> AFAIK, yes, since no crucial data is stored in those databases. They're
> all just hints to delivery processes. Someone is bound to correct me if
> I'm wrong though. :-)
No need. You are correct. It is always safe to rm db/* in Exim's spool.
The information is all hints. You won't lose any mail. Of course,
deleting the hints will change Exim's behaviour - it won't know to wait
before retrying so will try a delivery of every message on the queue at
the next queue run.
Amusing anecdote: In the early days of Exim, somebody got a copy of the
code and read it very superficially. He happened to spot the code for
updating the hints and noticed that this is very simple; it doesn't do
any kind of database transaction processing or any of the stuff you
would need to do with vital data. Indeed, if a write to a hints file
fails, or it can't get a lock, Exim just shrugs its shoulders and
carries on. Having misunderstood entirely what was going on, he wrote a
diatribe about what a disaster Exim was and how it would lose email etc.
etc. It was quite entertaining.
--
Philip Hazel University of Cambridge Computing Service,
ph10@??? Cambridge, England. Phone: +44 1223 334714.