[Dovecot] Expire plugin does not work
Hi. I test expire plugin for my dovecot 1.1.8. But, it seems to not work. I have 3 mailboxes on my machine. I want my messages in Junk and Trash expire after 1 day. I removed all messages in them before installing expire plugin. See my dovecot.conf: expire: Trash 1 Junk 1 expire_dict: proxy::expire My dabatases in /var/lib/dovecot are used. When I launch /usr/local/sbin/dovecot --exec-mail ext /usr/local/libexec/dovecot/expire-tool --test, it says: Info: user3@domain.tld/Trash: stop, expire time in future: Wed Feb 4 21:00:50 2009 Why this message? I have 3 mailboxes, and the message appears only with this mailbox. The 2 others mailbox have mails into Trash and Junk folders. And the mail are older than 2 days. An ls -lcs say it. When I launch /usr/local/sbin/dovecot --exec-mail ext /usr/local/libexec/dovecot/expire-tool, no messages appears. Nothing in my dovecot logs. Nothing (and I set mail_debug). No messages are deleted. In a mailbox1, I have this into Junk/cur directory: 4 -rw------- 1 dovecot dovecot 3822 Feb 2 13:39 1233569469.M275631P48216.***.***.net,S=3822,W=3945:2,S 4 -rw------- 1 dovecot dovecot 3004 Feb 2 15:43 1233585799.M730005P46882.***.***.net,W=3078,S=3004:2,S 4 -rw------- 1 dovecot dovecot 3056 Feb 2 17:49 1233587786.M676156P51401.***.***.net,S=3056,W=3132:2,S 4 -rw------- 1 dovecot dovecot 3732 Feb 2 17:49 1233592892.M701994P52459.***.***.net,S=3732,W=3823:2,S We are Feb 4, and these message are always here. No informations with mail_debug, or with --test parameter.These messages were arrived Feb 2, and they might have this date in dovecot.index.cache... How expire plugin is working? I don't understand it... -- -Nicolas.
On Wed, 2009-02-04 at 11:27 +0100, Nicolas Letellier wrote:
Info: user3@domain.tld/Trash: stop, expire time in future: Wed Feb 4 21:00:50 2009
Why this message? I have 3 mailboxes, and the message appears only with this mailbox. The 2 others mailbox have mails into Trash and Junk folders. And the mail are older than 2 days. An ls -lcs say it.
Dovecot tracks the timestamp when the message was copied to Trash, not necessary its ctime. So you probably copied the message to Trash on Feb 3 21:00:50, which is why it'll get expunged at Feb 4 21:00:50.
In a mailbox1, I have this into Junk/cur directory: 4 -rw------- 1 dovecot dovecot 3822 Feb 2 13:39 1233569469.M275631P48216.***.***.net,S=3822,W=3945:2,S 4 -rw------- 1 dovecot dovecot 3004 Feb 2 15:43 1233585799.M730005P46882.***.***.net,W=3078,S=3004:2,S 4 -rw------- 1 dovecot dovecot 3056 Feb 2 17:49 1233587786.M676156P51401.***.***.net,S=3056,W=3132:2,S 4 -rw------- 1 dovecot dovecot 3732 Feb 2 17:49 1233592892.M701994P52459.***.***.net,S=3732,W=3823:2,S
We are Feb 4, and these message are always here. No informations with mail_debug, or with --test parameter.These messages were arrived Feb 2, and they might have this date in dovecot.index.cache...
Was expire plugin enabled then? If it wasn't, it didn't add them to its database so it doesn't know about them.
On Wed, 04 Feb 2009 12:17:05 -0500 Timo Sirainen <tss@iki.fi> wrote:
On Wed, 2009-02-04 at 11:27 +0100, Nicolas Letellier wrote:
Info: user3@domain.tld/Trash: stop, expire time in future: Wed Feb 4 21:00:50 2009
Why this message? I have 3 mailboxes, and the message appears only with this mailbox. The 2 others mailbox have mails into Trash and Junk folders. And the mail are older than 2 days. An ls -lcs say it.
Dovecot tracks the timestamp when the message was copied to Trash, not necessary its ctime. So you probably copied the message to Trash on Feb 3 21:00:50, which is why it'll get expunged at Feb 4 21:00:50. But, now, we are 6 feb, and I have these messages:
-rw------- 1 dovecot dovecot 3822 Feb 2 11:11 1233569469.M275631P48216.helm.nicoelro.net,S=3822,W=3945:2,S -rw------- 1 dovecot dovecot 3004 Feb 2 15:40 1233585799.M730005P46882.helm.nicoelro.net,W=3078,S=3004:2,S -rw------- 1 dovecot dovecot 3056 Feb 2 16:16 1233587786.M676156P51401.helm.nicoelro.net,S=3056,W=3132:2,S Sincerlery, I don't understand! This night, I had: Info: mailbox3@domain.fr/Trash: no messages left Info: mailbox2@domain.net/Junk: no messages left Info: mailbox1@domain.net/Junk: no messages left Info: mailbox2@domain.net/Trash: stop, expire time in future: Fri Feb 6 19:43:55 2009 I can swear you I have new messages in Junk in mailbox1! After, I ran command without --test, it deleted nothing... I ran a command with --test and I had: Info: mailbox2@domain.net/Trash: stop, expire time in future: Fri Feb 6 19:43:55 2009 The 3 other messages have been deleted. I don't know why. I don't know why expired mail was not deleted...
In a mailbox1, I have this into Junk/cur directory: 4 -rw------- 1 dovecot dovecot 3822 Feb 2 13:39 1233569469.M275631P48216.***.***.net,S=3822,W=3945:2,S 4 -rw------- 1 dovecot dovecot 3004 Feb 2 15:43 1233585799.M730005P46882.***.***.net,W=3078,S=3004:2,S 4 -rw------- 1 dovecot dovecot 3056 Feb 2 17:49 1233587786.M676156P51401.***.***.net,S=3056,W=3132:2,S 4 -rw------- 1 dovecot dovecot 3732 Feb 2 17:49 1233592892.M701994P52459.***.***.net,S=3732,W=3823:2,S
We are Feb 4, and these message are always here. No informations with mail_debug, or with --test parameter.These messages were arrived Feb 2, and they might have this date in dovecot.index.cache...
Was expire plugin enabled then? If it wasn't, it didn't add them to its database so it doesn't know about them.
Yes, expire plugin was enabled. I delete ALL my spams and ALL my Trash mails. And after, I activated the expire plugin. # 1.1.10: /usr/local/etc/dovecot.conf # OS: FreeBSD 6.3-RELEASE-p4 i386 ufs syslog_facility: local6 protocols: imap imaps managesieve ssl_cert_file: /etc/ssl/mail/mail.nicoelro.net.cert ssl_key_file: /etc/ssl/mail/mail.nicoelro.net.key disable_plaintext_auth: no login_dir: /var/run/dovecot/login login_executable(default): /usr/local/libexec/dovecot/imap-login login_executable(imap): /usr/local/libexec/dovecot/imap-login login_executable(managesieve): /usr/local/libexec/dovecot/managesieve-login login_user: dovecot-auth login_greeting: NicoElro.Net Mail Server login_processes_count: 2 verbose_proctitle: yes first_valid_uid: 143 last_valid_uid: 143 first_valid_gid: 143 last_valid_gid: 143 mail_access_groups: mail mail_location: maildir:/var/mail/vmail/%u/ mail_debug(default): no mail_debug(imap): no mail_debug(managesieve): yes mail_executable(default): /usr/local/libexec/dovecot/imap mail_executable(imap): /usr/local/libexec/dovecot/imap mail_executable(managesieve): /usr/local/libexec/dovecot/managesieve mail_plugins(default): quota imap_quota mail_log expire mail_plugins(imap): quota imap_quota mail_log expire mail_plugins(managesieve): mail_plugin_dir(default): /usr/local/lib/dovecot/imap mail_plugin_dir(imap): /usr/local/lib/dovecot/imap mail_plugin_dir(managesieve): /usr/local/lib/dovecot/managesieve imap_client_workarounds(default): delay-newmail outlook-idle netscape-eoh tb-extra-mailbox-sep imap_client_workarounds(imap): delay-newmail outlook-idle netscape-eoh tb-extra-mailbox-sep imap_client_workarounds(managesieve): sieve(default): sieve(imap): sieve(managesieve): ~/dovecot.sieve auth default: mechanisms: plain login master_user_separator: * passdb: driver: passwd-file args: /usr/local/etc/dovecot.masterusers master: yes passdb: driver: sql args: /usr/local/etc/dovecot/dovecot-sql.conf userdb: driver: sql args: /usr/local/etc/dovecot/dovecot-sql.conf socket: type: listen client: path: /var/spool/postfix/private/auth mode: 432 user: postfix master: path: /var/run/dovecot/auth-master mode: 432 user: dovecot group: mail plugin: quota: maildir quota_rule: *:storage=1000M quota_rule2: Trash:storage=50M quota_warning: storage=80%% /usr/home/scripts/mail_quota-warning.sh 80 quota_warning2: storage=90%% /usr/home/scripts/mail_quota-warning.sh 90 quota_warning3: storage=95%% /usr/home/scripts/mail_quota-warning.sh 95 sieve: /var/mail/vmail/%u/dovecot.sieve expire: Trash 1 Junk 1 expire_dict: proxy::expire dict: expire: db:/var/lib/dovecot/expire.db -rw------- 1 root wheel 24576 Feb 6 02:36 __db.001 -rw------- 1 root wheel 49152 Feb 6 02:36 __db.002 -rw------- 1 root wheel 270336 Feb 6 02:30 __db.003 -rw------- 1 root wheel 98304 Feb 4 15:46 __db.004 -rw------- 1 root wheel 49152 Feb 6 02:36 __db.005 -rw------- 1 root wheel 0 Nov 24 16:52 auth-success -rw------- 1 root wheel 8192 Feb 6 07:23 expire.db -- -Nicolas.
participants (2)
-
Nicolas Letellier
-
Timo Sirainen