[Dovecot] apparent bug with filesystem quota and message lists
Don't know if anyone else uses Berkeley derived filesystem quota, but IBM's AIX does. A little over a week after migrating from UWIMAP to DC (with mbox format unchanged) everything is clean except for this one problem: When users go over quota, when they login the next time, the folder list is blank. You can imagine the panicked calls to the Helpdesk. If their quotas are raised or re-graced, Get Mail returns the expected list. This behavior happens with a variety of clients: Pine, MacMail,TBird, Horde Webmail, etc. The index filesystem has no quota on it.
I would have to imagine the Dovecot is using (or trying to use) some space in the quota'ed filesystems which the operating system won't allow, and this results in there being an empty file that DC uses for the message list sent to the client. There are NO messages in syslog (other than the expected login and logout) indicating any problems. Our legacy setup has the inboxes in /var/spool/mail, and the folders in ~/mail. The problem can happen either place.
dovecot -n returns:
# 1.0.1: /usr/local/etc/dovecot.conf listen: *:143 ssl_listen: *:993 disable_plaintext_auth: no login_dir: /var/run/dovecot/login login_executable: /usr/local/libexec/dovecot/imap-login login_processes_count: 12 login_max_processes_count: 774 verbose_proctitle: yes first_valid_uid: 200 mail_location: mbox:~/mail:INBOX=/var/spool/mail/%u:INDEX=/var/dcindx/%u mbox_dirty_syncs: no mbox_lazy_writes: no auth default: passdb: driver: pam userdb: driver: passwd Suggestions?
--
Stewart Dean, Unix System Admin, Henderson Computer Resources
Center of Bard College, Annandale-on-Hudson, New York 12504
sdean@bard.edu voice: 845-758-7475, fax: 845-758-7035
Haven't heard from Timo yet, but in my research on migrate to the maildir format from my present mbox standard, I stumbled over this in the Maildir Configuration wiki page:
Dovecot can't currently handle not being able to write the control files, so it will cause problems with filesystem quota <http://wiki.dovecot.org/Quota/FS>. To avoid problems with this, you should place control files into a partition where quota isn't checked. You can specify this by adding :CONTROL=<path> to mail_location, for example:
mail_location = *maildir*:~/*Maildir*:CONTROL=/var/no-quota/%u
This, of course is for Maildir format, while I am currently using mbox.
My current mail_location line looks like this:
mail_location: mbox:~/mail:INBOX=/var/spool/mail/%u:INDEX=/var/dcindx/%u
can/should I do something like this to fix my problem:?
mail_location: mbox:~/mail:CONTROL=/var/no-quota/%u
:INBOX=/var/spool/mail/%u:INDEX=/var/dcindx/%u
FWIW, there is no quota on the index filesystem (/var/dcindx).
Relying further on the kinde
Stewart Dean wrote:
Don't know if anyone else uses Berkeley derived filesystem quota, but IBM's AIX does. A little over a week after migrating from UWIMAP to DC (with mbox format unchanged) everything is clean except for this one problem: When users go over quota, when they login the next time, the folder list is blank. You can imagine the panicked calls to the Helpdesk.
If their quotas are raised or re-graced, Get Mail returns the expected list. This behavior happens with a variety of clients: Pine, MacMail,TBird, Horde Webmail, etc. The index filesystem has no quota on it.I would have to imagine the Dovecot is using (or trying to use) some space in the quota'ed filesystems which the operating system won't allow, and this results in there being an empty file that DC uses for the message list sent to the client. There are NO messages in syslog (other than the expected login and logout) indicating any problems.
Our legacy setup has the inboxes in /var/spool/mail, and the folders in ~/mail. The problem can happen either place.dovecot -n returns:
# 1.0.1: /usr/local/etc/dovecot.conf listen: *:143 ssl_listen: *:993 disable_plaintext_auth: no login_dir: /var/run/dovecot/login login_executable: /usr/local/libexec/dovecot/imap-login login_processes_count: 12 login_max_processes_count: 774 verbose_proctitle: yes first_valid_uid: 200 mail_location: mbox:~/mail:INBOX=/var/spool/mail/%u:INDEX=/var/dcindx/%u mbox_dirty_syncs: no mbox_lazy_writes: no auth default: passdb: driver: pam userdb: driver: passwd Suggestions?
--
Stewart Dean, Unix System Admin, Henderson Computer Resources
Center of Bard College, Annandale-on-Hudson, New York 12504
sdean@bard.edu voice: 845-758-7475, fax: 845-758-7035
On Mon, 2007-07-30 at 11:34 -0400, Stewart Dean wrote:
When users go over quota, when they login the next time, the folder list is blank.
I don't see why this would happen. Listing mailboxes doesn't try to write anything to filesystem. Can you try this yourself by making an account over quota and then trying what LIST command shows?
1 login user pass 2 list "" * 3 lsub "" *
Although if the client tries to always SUBSCRIBE to mailboxes, even if they already are, then Dovecot probably fails. But it should log an error then.
participants (2)
-
Stewart Dean
-
Timo Sirainen