On Sat, 18 Feb 2012 18:52:57 +0200, Timo Sirainen <t...@iki.fi> wrote: > On 17.2.2012, at 20.25, Micah Anderson wrote: > > > /usr/bin/doveadm expunge -A mailbox Trash* savedbefore 21d > > /usr/bin/doveadm expunge -A mailbox Spam savedbefore 7d > > /usr/bin/doveadm expunge -A mailbox Sent savedbefore 120d > > > > It seems like it does not use the iterate query, but rather it looks > > into the database at the expires table and rather it iterates over every > > user mentioned there. This is a problem because I've got multiple > > dovecot machines with different sets of users on them, using the same > > table, so that means that its doing stat() calls on each system for > > every user mentioned there and failing to find the user on the > > filesystem (because the user is on another system). In these cases it > > spits out an error: doveadm(user): Info: User no longer exists, skipping > > Upgrade to v2.1: > > * Expire plugin: Only go through users listed by userdb iteration. > Delete dict rows for nonexistent users, unless > expire_keep_nonexistent_users=yes.
Great, i'll give that version a spin, thanks! Is there a similar dict row cleanup for quota? micah