On Thu, 2010-08-05 at 18:02 +0200, Burckhard Schmidt wrote:
If I copy a message (with TB) into that folder, I get an error if there exists no entry for that user and that folder within the database:
dict: Error: sqlite: exec(INSERT INTO expires (expire_stamp,username,mailbox) VALUES ('1281016832','userx','AutoCleanSpam')) failed: unable to open database file (14) dict: Error: sql dict: commit failed:
If I make an initial entry manually first no error occurs.
You have to create the row for each user?..
Anymore there is a problem concerning acl of the base directory of the expires.db: dict: Error: sqlite: open(/addons/expire/expires.db) failed: unable to open database file dict: Error: dict sql lookup failed: out of memory
It looks to me like 3/4 of those error messages are wrong..
It was necessary to give "other" r-x permissions for directory /addons/expire.
r-x? o+rx?
I use mail_uid = sysdov and mail_gid = sysdov. That is uid 29. Furthermore I work with userdb ldap and uid/gid mapping: user_attrs = homeDirectory=home,uidNumber=29,gidNumber=29 So usually it was sufficient using acl like this drwxr-x--- 2 sysdov sysdov 5 Aug 5 16:00 /addons/expire
As which user expire, dict, sqlite access are running?
dict process runs as $dovecot_internal_user (dovecot) by default. All accesses to the expiredb are done via dict process, so you should just make it accessible to dovecot user.