Hi Timo,
Thanks Timo. This is great. I followed your instructions, and sure enough, everything is working as expected now. Thank you very very much. One question I have, What's the advantage of using prefetch? Is this a considerable performance benefit, or is it just more or less another way to do things? Thanks again.
-Rod
On Wed, Nov 19, 2008 at 4:54 PM, Timo Sirainen tss@iki.fi wrote:
On Nov 19, 2008, at 9:01 PM, Rod Treweek wrote:
password_query = SELECT username as user, password,
concat('/NFS1MAILDIR/mailSysV2/', maildir) as userdb_home, concat('maildir:/NFS1MAILDIR/mailSysV2/',maildir, ':INDEX=/usr/local/dovecot/indexes/',maildir) as userdb_mail, 143 AS userdb_uid, 143 AS userdb_gid, concat('*:storage=', floor(quota*1024)) AS quota_rule FROM mailbox WHERE username = '%u' AND active = '1'
The userdb_* fields here are used only if you're using prefetch userdb.
user_query = SELECT concat('/NFS1MAILDIR/mailSysV2/', maildir) as home,
concat('maildir:/NFS1MAILDIR/mailSysV2/', maildir) as mail, concat('maildir:/NFS1MAILDIR/mailSysV2/',maildir, ':INDEX=/usr/local/dovecot/indexes/',maildir) as mail_location,
"mail_location" field is ignored. It's called mail, which you're also returning without the :INDEX.
So I guess you're 1) not using prefetch userdb so the userdb_mail in password_query doesn't get used and 2) the "mail" field without :INDEX is used from user_query.
I've got mail working more or less, however the indexes simply will not
appear in the path referenced above. My suspicion has been that this is where my nfs locking problems are occurring, as the indexes are just not getting populated. Any ideas? I gather that the cacheing done through the mysql database is desirable as it would tend to speed things up quite a bit....any ideas on how to pass the index location through the string as well? Or is this generally regarded as a negligible gain?
What caching? I'm not really sure what you're asking here.