On Fri, 2012-11-23 at 13:32 +0100, Arkadiusz Miśkiewicz wrote: > Shouldn't exim_tidydb make databases physically smaller?
You'd like to think so, wouldn't you? However for reasons which are
historical but mostly related to performance, Exim prefers to use the
Berkeley DB library for its databases. These are "grow only" files -
data is appended to them by allocating new leaves or pages in the file.
When data is removed, the leaves or pages may be re-used if they are
empty but they are never deleted.
The recommendation from the developers has always been to dump the DB
and create a new one if the size is too big. In Exim's case, most of the
time simply deleting it will suffice - they're designed to hold
transient data such as retry information which will be regenerated after
deletion.