[Dovecot] expire tool question
Hi, I try to get expire working, with the BDB backend and mbox mailboxes.
If I try to invoke the expire-tool like
/usr/local/sbin/dovecot --exec-mail ext /usr/local/libexec/dovecot/expire-tool --test
I get
[root@m ~]# /usr/local/sbin/dovecot --exec-mail ext /usr/local/libexec/dovecot/expire-tool --test Error: read(/var/run/dovecot/dict-server) failed: Remote disconnected
Hmm. I searched for hints but could not find a related discussion or problem. Here are the relavant config parts:
dict { expire = db:/var/lib/dovecot/expire.db }
plugin { # expire plugin expire_dict = proxy::expire expire = backup 7 spam 30 # If you have a non-default path to auth-master, set also: auth_socket_path = /var/run/dovecot/auth-master }
Any ideas? Has anybody got this working ? The file /var/lib/dovecot/expire.db doas not exit even though I restarted DC quite a while ago.
Regards, Jakob
I myself wrote:
Hi, I try to get expire working, with the BDB backend and mbox mailboxes. (...) [root@m ~]# /usr/local/sbin/dovecot --exec-mail ext /usr/local/libexec/dovecot/expire-tool --test Error: read(/var/run/dovecot/dict-server) failed: Remote disconnected
Hmm. I searched for hints but could not find a related discussion or problem. Here are the relavant config parts: My first finding is that I need to enable db when doing ./configure. Now I see a berkeley database tree in the /var/run/dovecot/ directory. However this has the timestamp of the last restart and does not change even when I access one of my expire-configured folders (backu and spam). Should the DB not be updated every time I access one of these folders? I have no namespaces and the folders are directly in the user's home dirs.
But at least the expire-tool now runs silently. Totally silently. No output at all....
Comments welcome.
JC
On Wed, 2008-11-26 at 20:57 +0100, Jakob Curdes wrote:
My first finding is that I need to enable db when doing ./configure. Now I see a berkeley database tree in the /var/run/dovecot/ directory. However this has the timestamp of the last restart and does not change even when I access one of my expire-configured folders (backu and spam). Should the DB not be updated every time I access one of these folders?
The database contains the time for each mailbox when the oldest message needs to be expunged. That timestamp will be set when a) the oldest message is expunged, b) a new message is saved and the database does not yet contain any record for the corresponding mailbox.
Regards, Thorsten
On Wednesday 26 November 2008 20.57.10 Jakob Curdes wrote:
I myself wrote:
Hi, I try to get expire working, with the BDB backend and mbox mailboxes. (...) [root@m ~]# /usr/local/sbin/dovecot --exec-mail ext /usr/local/libexec/dovecot/expire-tool --test Error: read(/var/run/dovecot/dict-server) failed: Remote disconnected
Hmm. I searched for hints but could not find a related discussion or problem. Here are the relavant config parts:
My first finding is that I need to enable db when doing ./configure. Now I see a berkeley database tree in the /var/run/dovecot/ directory. However this has the timestamp of the last restart and does not change even when I access one of my expire-configured folders (backu and spam). Should the DB not be updated every time I access one of these folders? I have no namespaces and the folders are directly in the user's home dirs.
But at least the expire-tool now runs silently. Totally silently. No output at all....
Maybe you'll find this thread useful:
http://dovecot.org/list/dovecot/2008-October/034747.html
-- LEVAI Daniel PGP key ID = 0x4AC0A4B1 Key fingerprint = D037 03B9 C12D D338 4412 2D83 1373 917A 4AC0 A4B1
Maybe you'll find this thread useful:
I already saw this. Unfortunately I do not understand the complete reasoning. If I'm right the thread basically says
- dovecot-expire should log something with mail-debug=yes. (it doesn't in my case, other than "Module loaded: /usr/local/lib/dovecot/imap/lib20_expire_plugin.so")
- hierarchy separator could be wrong (cannot be my case as I have the folders directly in the user's mail directory, no hierarchy there)
- messages might be too young (The folders are older with messages that are weeks old and I want to expire after 7 days. But if I understand it correctly, the expiry DB is only built or touched on certain events, which ones would that be? Adding a message to the folder? Or is it impossible to expire messages present BEFORE expire plugin installation?)
Any hints?
JC
On Thursday 27 November 2008 20.15.21 Jakob Curdes wrote:
Maybe you'll find this thread useful:
I already saw this. Unfortunately I do not understand the complete reasoning. If I'm right the thread basically says
- dovecot-expire should log something with mail-debug=yes. (it doesn't in my case, other than "Module loaded: /usr/local/lib/dovecot/imap/lib20_expire_plugin.so")
- hierarchy separator could be wrong (cannot be my case as I have the folders directly in the user's mail directory, no hierarchy there)
- messages might be too young (The folders are older with messages that are weeks old and I want to expire after 7 days. But if I understand it correctly, the expiry DB is only built or touched on certain events, which ones would that be? Adding a message to the folder? Or is it impossible to expire messages present BEFORE expire plugin installation?)
Any hints? You can use the idxview tool to examine the messages' timestamps. It's after hdr.Date:.
Daniel
-- LEVAI Daniel PGP key ID = 0x4AC0A4B1 Key fingerprint = D037 03B9 C12D D338 4412 2D83 1373 917A 4AC0 A4B1
participants (3)
-
Jakob Curdes
-
LÉVAI Dániel
-
Thorsten Vollmer