Cyrus 2.4.6 problem with delayed expunge mode
Bron Gondwana
brong at fastmail.fm
Tue Feb 8 04:36:14 EST 2011
On Sun, Feb 06, 2011 at 02:27:12PM -0200, Lucas Zinato Carraro wrote:
> Hi,
>
> I configure cyrus (imapd.conf ) with:
>
> ..............
> delete_mode: delayed
> .............
> expunge_mode: delayed
>
> and in cyrus.conf
>
> ..................
> EVENTS {
> checkpoint cmd="/usr/cyrus/bin/ctl_cyrusdb -c" period=5
> delprune cmd="/usr/cyrus/bin/cyr_expire -E 60 -X 60 -D 60" at=2301
> tlsprune cmd="/usr/cyrus/bin/tls_prune" at=0400
> squatter cmd="/usr/cyrus/bin/squatter -s -r user" at=2300
> }
>
> But when i check with unexpunge the mailboxes does not have expunged
> messages from 60 days.
> I have mailboxes with 7 days, 14 days and 20 days.
>
> Only cyr_expire remove expunged messages ?
Oohh... I suspect you're being bitten by this: (from man imapd.conf)
expunge_days: 7
Number of days to retain expunged messages before cleaning up
their index records. The default is 7. This is necessary for
QRESYNC to work correctly. If combined with delayed expunge
(above) you will also be able to unexpunge messages during this
time.
So it will clean up after 14 days actually - if you haven't done
the cleanup yourself in the meantime with cyr_expire. This is done
during mailbox close. It's me trying to be more clever than I should!
The easy fix is just to put "expunge_days: 60" in your config. Longer
term I want to fix cyr_expire not to be so complex and multi-function.
Even just better defaults would be good! At the moment it will still
wipe all expunged messages if you get the command line wrong.
Bron.
More information about the Info-cyrus
mailing list