On Wed, 18 Jul 2018, Sophie Loewenthal wrote:
Why did my 'doveadm expunge' command not clear the Trash out of a mailbox?
The oldest messages was put into the Trash on the 26th June 2018 as shown in
the file timestamp.
-rw------- 1 vmail mail 33056 Jun 26 16:46
1530031582.M768773P18242.mx10,S=33056,W=33510:2,RS
# doveadm -D expunge -u testu...@example.org mailbox Trash savedbefore 2d
I was going to suggest that you dump the savedbefore dates on all your
messages to see what Dovecot thinks your message's timestamps are.
I tried it out myself and was surprised to find *all* messages in *any*
mailbox I looked at gave the same timestamp -- probably that of the
latest message.
For example,
# doveadm -f tab fetch -u {user} "uid date.saved" mailbox Trash
uid date.saved
23624 2018-07-18 14:50:03
23625 2018-07-18 14:50:03
[... 3657 lines removed ...]
27295 2018-07-18 14:50:03
27296 2018-07-18 14:50:03
27297 2018-07-18 14:50:03
# doveadm -f tab fetch -u {user} "uid date.saved" mailbox INBOX
uid date.saved
94878 2018-07-18 14:53:46
100366 2018-07-18 14:53:46
[... 140 lines removed ...]
102313 2018-07-18 14:53:46
102314 2018-07-18 14:53:46
102315 2018-07-18 14:53:46
This would explain why the cron script I use to blow away old deleted mail
has not fired in ages.
Is this a bug, or am I not understanding what "savedbefore" means now? It
certainly has changed behaviour since <2.2, since my script used to
work before.
Joseph Tam <jtam.h...@gmail.com>