[Dovecot] expire-plugin: configuration dict-server

Thomas Zajic zlatko at zlatko.fdns.net
Wed Aug 6 20:02:23 EEST 2008


* Eric Toczek, 2008-08-06 11:39

> Thomas Zajic wrote:
>> Hi,
>> Same problem here - dovecot never adds any records to the expire
>> table, although the database connection is fine. All it ever does
>> is query for existing records when a message gets moved to Trash
>> or Junk, so at least that part is working.
> 
> Do you use namespaces? Since Timo just discovered they may not be
> working with expire properly. "Looking at the code it looks like the
> expire plugin ignores the namespace prefix but expire-tool requires it,
> so it probably won't work.."

No, I'm not using namespaces, or at least not intentionally. Here's
the output of 'dovecot -n' and other possibly relevant stuff:

[root at airframe]:~# dovecot -n
# 1.1.2: /usr/local/etc/dovecot.conf
login_dir: /usr/local/var/run/dovecot/login
login_executable: /usr/local/libexec/dovecot/imap-login
login_greeting_capability: yes
mail_max_userip_connections: 20
verbose_proctitle: yes
mail_location: maildir:/home/%u/Maildir:INBOX=/home/%u/Maildir/.INBOX
fsync_disable: yes
mail_plugins: expire fts fts_squat
auth default:
  mechanisms: plain digest-md5 cram-md5
  passdb:
    driver: passwd-file
    args: /usr/local/etc/dovecot-passwd
  userdb:
    driver: passwd
  socket:
    type: listen
    master:
      path: /usr/local/var/run/dovecot/auth-master
      mode: 384
plugin:
  expire: Trash 30 Junk 60
  expire_dict: proxy::expire
  fts: squat
  fts_squat: partial=4 full=6
dict:
  expire: mysql:/usr/local/etc/dovecot-sql-expire.conf

[root at airframe]:~# cat /usr/local/etc/dovecot-sql-expire.conf
driver = mysql
connect = host=/var/run/mysql/mysql.sock user=XXX password=YYY dbname=dovecot
table = expire
select_field = when
where_field = path
username_field = username

[root at airframe]:~# mysql -p dovecot
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 900
Server version: 5.0.51 Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> describe expire;
+----------+--------------+------+-----+---------+-------+
| Field    | Type         | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| username | varchar(64)  | NO   | PRI | NULL    |       | 
| path     | varchar(255) | NO   | PRI | NULL    |       | 
| when     | varchar(64)  | NO   |     | NULL    |       | 
+----------+--------------+------+-----+---------+-------+

[root at airframe]:~# 


Do you see any obvious errors and/or problems?


Thanks,
Thomas


More information about the dovecot mailing list