[Dovecot] Doveadm-Expunge v2.0.5

Timo Sirainen tss at iki.fi
Tue Nov 2 17:06:29 EET 2010


On Thu, 2010-10-28 at 21:33 -0700, Kui Zhang wrote:
> >> doveadm(user at domain): Debug: expunge: box=.EXPUNGED/INBOX/mon uid=791
> >> doveadm(user at domain): Info: expunge: box=INBOX/mon, uid=196,

> Thanks for the info. So is info message showing the wrong mailbox or
> is it deleting from the wrong mailbox?

Oh, that's a bug in mail-log plugin. Fixed:
http://hg.dovecot.org/dovecot-2.0/rev/4ee632794f0b

> Let me rephrase that. Some users are using maildir. and more than one
> of such users with 30-40Gb of emails, approx 100-800k/message.  approx
> 85899345 messages. 20-50 mailboxes under each user. And messages get
> deleted often.
> 
> When expunging, lazy expunged, messages from such mailboxes,
> individually at separate time. Would not it be faster/safer reading
> from expire database compare to enumerate everything?

Currently the expire database is used to only filter out users who don't
have anything to expunge. Some day in future it will filter out also
mailboxes that don't have anything. So if your total number of mailboxes
isn't very high, it's not very helpful.

But, now that you mentioned it, doing a "savedbefore 7d" search would go
through all the messages from the beginning of the mailbox rather than
from the end or doing a binary search. Maybe that should be optimized..

> I was hoping to setup a script to expunge, lazy expunged, messages
> from each user, at diff intervals, based predetermined rate of delete.

If you just call doveadm expunge separately for each user, that would
work.



More information about the dovecot mailing list