Re: [Dovecot] OT: IMAP folder aliases
* Patrick Ben Koetter p...@state-of-mind.de: Has anyone seen an approach or a solution that solves the problem from a users point of view? A server side alias list that maps to a server standard? Tried that, didn't work out that great (users got confused by 12 dozillion sent folders). As for know, I auto-subscribe new users to a public namespace which contains information on how to configure their email clients exactly the same way that the different webmail interfaces I offer are. As a second line of defense, a cron script checks once a day if there is a typical duplication of folders (sent, sent-mail, Gesendet) and this script then proceeds to annoy the hell out of said users by sending them an email once a day, until the user either acknowledges that he doesn't care (database entry), fixes the problem or opts in for an automatic fix (moving messages to the right folders. Make sure to include a huge disclaimer, this kills indices). Ciao Stefan -- Stefan Förster http://www.incertum.net/ Public Key: 0xBBE2A9E9 FdI #28: ... werden wir den Schutz Minderjähriger in den Vordergrund - stellen. Im Grunde weiß ich genausowenig über die ganze Sache wie meine Wähler, aber verbieten bringt mehr Stimmen. (Peter Berlich)
Re: [Dovecot] OT: IMAP folder aliases
* Patrick Ben Koetter p...@state-of-mind.de: * Timo Sirainen dovecot@dovecot.org: No. And one of the first commands they typically do is LIST. So there are no good ways to solve this. I suspected that. Would it be possible to identify a client by the folders it tries to subscribe to? You could, of course, have a list of folders to hide in a LIST command. Most clients would then try to create those folders (a request which is ignored) and the IMAP server had to redirect all further select requests. Something along the lines of: /etc/dovecot/dovecot-ignore-aliases-in-list-or-create-command-and-redirect-select: sent-mail gesendet/i,gesendete nachrichten/i,sent\(-mail\)?/i trash trash/i,junk/i,geloeschte\ objekte/i User interaction or server side configuration is fine if it takes place in a company, but its not feasible in an ISP environment. A corporate environment doesn't need that kind of functionality. Just preconfigure all installed software to suit your company's needs. Ciao Stefan -- Stefan Förster http://www.incertum.net/ Public Key: 0xBBE2A9E9 Er nahm sich das Leben - so wie er es brauchte.
Re: [Dovecot] Dovecot Versions and Debian
* Seth Mattinen se...@rollernet.us: Mario Antonio wrote: How do you deal with new important patches? Do you patch the source and then rebuild the packages? Is it safe or better just wait until SID release the new source? I just wait for it to show up in sid. You could also apply patches yourself and rebuild, either way works. Or just grab the excellent source package provided by Stephan Bosch at http://xi.rename-it.nl/debian/pool/dovecot-1.2/ - e.g: aptitude -y build-dep dovecot (you only need to do that once) wget -t0 -c http://xi.rename-it.nl/debian/pool/dovecot-1.2/dovecot_1.2.3.orig.tar.gz \ http://xi.rename-it.nl/debian/pool/dovecot-1.2/dovecot_1.2.3-0~auto+7.dsc \ http://xi.rename-it.nl/debian/pool/dovecot-1.2/dovecot_1.2.3-0~auto+7.diff.gz dpkg-source -x dovecot_1.2.3-0~auto+7.dsc cd dovecot-1.2.3 dpkg-buildpackage -rfakeroot Guess this is the right time for a big Thank You, Stephan. Cheers Stefan
Re: [Dovecot] Dovecot Versions and Debian
* Mario Antonio supp...@webjogger.net: In previous emails, Stephan stated: As the WIKI states: do *NOT* use these packages for systems that need to be *STABLE*! This is rebuilt every hour from repository commits from Timo and myself and if/when one of us commits a mistake, your setup will break accordingly upon upgrade. This is for testing purposes only. My guess he is just referring to the DEB packages ... So do you consider safe to use the source package ? Of course this is safe. Just kidding. If you want to compile these source packages, take _one_ version, compile it and then test it thoroughly. If it passes all testing, then put it into staging, test more, and only if it passes all test again, move it to production environment. And don't upgrade every time a new source package is available. As always, you should know what you are doing if you install packages provided by third parties, be it binaries or sources you compile yourself. Example: The sources come with a 2: epoch. If one day, the next stable version of Debian comes with 1:1.2.8 and you previously installed your freshly built 2:1.2.1, then the upgrade process will not replace your old, outdated, built-from-source packages. Cheers Stefan
[Dovecot] Wiki entry for expire plugin, PostgreSQL trigger needs update
The wiki entry at http://wiki.dovecot.org/Plugins/Expire needs an update for Dovecot 1.2 and PostgreSQL: -- v1.2+: CREATE OR REPLACE FUNCTION merge_expires() RETURNS TRIGGER AS $$ BEGIN IF exists(SELECT 1 FROM expires WHERE username = NEW.username AND mailbox = NEW.mailbox) THEN UPDATE expires SET expire_stamp = NEW.expire_stamp WHERE username = NEW.username AND mailbox = NEW.mailbox; RETURN NULL; ELSE RETURN NEW; END IF; END; $$ LANGUAGE plpgsql; CREATE TRIGGER mergeexpires BEFORE INSERT ON expires FOR EACH ROW EXECUTE PROCEDURE merge_expires(); At least that's what I think after looking at the code: iter = dict_iterate_init(dict, DICT_EXPIRE_PREFIX, DICT_ITERATE_FLAG_RECURSE | DICT_ITERATE_FLAG_SORT_BY_VALUE); /* We'll get the oldest values (timestamps) first */ while (dict_iterate(iter, key, value) 0) { /* key = DICT_EXPIRE_PREFIXuser/mailbox */ userp = key + strlen(DICT_EXPIRE_PREFIX); [...] T_BEGIN { username = t_strdup_until(userp, p); If this code does somehow iterate usernames which are not present in the dict, I apologize. Cheers Stefan
[Dovecot] autocreate plugin fails to subscribe mailbox in public namespace
Hi, I'm one step away from replacing a 7 years old qmail/uw-imapd setup with some state of the art soft- and hardware. We got migration scripts and test almost done - just one thing that keeps failing: The autocreate plugin is supposed to subscribe new users to different mailboxes, one of them being in namespace Public. - this subscription to Public.announcements fails. Below is a dovecot -n - and no, there are no error messages in the logs. # 1.2.2: /etc/dovecot/dovecot.conf # OS: Linux 2.6.30-bpo.1-amd64 x86_64 Debian 5.0.2 log_timestamp: %Y-%m-%d %H:%M:%S protocols: imap imaps managesieve listen(default): *:143 listen(imap): *:143 listen(managesieve): * ssl_listen(default): *:993 ssl_listen(imap): *:993 ssl_listen(managesieve): ssl_cert_file: /etc/ssl/owncerts/snakeoil.crt ssl_key_file: /etc/ssl/private/snakeoil.key login_dir: /var/run/dovecot/login login_executable(default): /usr/lib/dovecot/imap-login login_executable(imap): /usr/lib/dovecot/imap-login login_executable(managesieve): /usr/lib/dovecot/managesieve-login verbose_proctitle: yes mail_privileged_group: vmail mail_location: maildir:~/Maildir mbox_write_locks: fcntl dotlock mail_executable(default): /usr/lib/dovecot/imap mail_executable(imap): /usr/lib/dovecot/imap mail_executable(managesieve): /usr/lib/dovecot/managesieve mail_process_size: 384 mail_plugins(default): quota imap_quota fts fts_squat acl autocreate expire trash mail_plugins(imap): quota imap_quota fts fts_squat acl autocreate expire trash mail_plugins(managesieve): mail_plugin_dir(default): /usr/lib/dovecot/modules/imap mail_plugin_dir(imap): /usr/lib/dovecot/modules/imap mail_plugin_dir(managesieve): /usr/lib/dovecot/modules/managesieve namespace: type: private separator: . inbox: yes list: yes subscriptions: yes namespace: type: public separator: . prefix: Public. location: maildir:/export/vmailboxes/public:INDEX=~/Maildir/public list: yes lda: postmaster_address: postmas...@test.cite.lan hostname: testvm06.test.cite.lan mail_plugins: quota sieve expire trash auth_socket_path: /var/run/dovecot/auth-master auth default: mechanisms: plain login cram-md5 passdb: driver: ldap args: /etc/dovecot/dovecot-ldap.conf userdb: driver: ldap args: /etc/dovecot/dovecot-ldap.conf socket: type: listen client: path: /var/spool/postfix/private/auth mode: 432 user: postfix group: sasl master: path: /var/run/dovecot/auth-master mode: 384 user: vmail group: vmail plugin: quota: maildir:User quota quota_warning: storage=90%% /usr/local/bin/quota-warning.sh 90 quota_warning2: storage=95%% /usr/local/bin/quota-warning.sh 95 sieve: ~/.dovecot.sieve sieve_storage: ~/sieve sieve_extensions: +imapflags fts: squat fts_squat: partial=4 full=10 acl: vfile autocreate: Trash autocreate2: Drafts autocreate3: Sent autocreate4: learn-spam autosubscribe: Trash autosubscribe2: Drafts autosubscribe3: Sent autosubscribe4: learn-spam autosubscribe5: Public.announcements autosubscribe6: INBOX expire: Trash 60 Trash/* 60 expire_dict: proxy::expire trash: /etc/dovecot/dovecot-trash.conf dict: expire: pgsql:/etc/dovecot/dovecot-dict-expire.conf Any hints are really appreciated. Cheers Stefan BTW: If anybody is interested, I could provide load and usage statistics of our old and new software once step 1 of our migration (new hardware is step 2) is done. Only ~1000 users, but still...
[Dovecot] ACL plugin, public namespace, erroneous \HasNoChildren
Hi, dovecot 1.2.2 with a second namespace called Public, mapped to /export/vmailboxes/public, LIST returning \HasNoChildren: r...@testvm06:~# cat /export/vmailboxes/public/dovecot-acl user=cite lrwstiekxa authenticated lrs anyone lrs r...@testvm06:~# ls -l /export/vmailboxes/public/.announcements/dovecot-acl lrwxrwxrwx 1 root root 14 Aug 6 03:50 /export/vmailboxes/public/.announcements/dovecot-acl - ../dovecot-acl With ACL plugin enabled (notice the \HasNoChildren): r...@testvm06:~# telnet localhost 143 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. * OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE STARTTLS AUTH=PLAIN AUTH=LOGIN AUTH=CRAM-MD5] Dovecot ready. . login cite secret . OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE SORT THREAD=REFERENCES THREAD=REFS MULTIAPPEND UNSELECT IDLE CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH ACL RIGHTS=texk QUOTA] Logged in . list Public * LIST (\Noselect \HasNoChildren) . Public . OK List completed. . select Public.announcements * FLAGS (\Answered \Flagged \Deleted \Seen \Draft) * OK [PERMANENTFLAGS (\Answered \Flagged \Deleted \Seen \Draft \*)] Flags permitted. * 0 EXISTS * 0 RECENT * OK [UIDVALIDITY 1249522417] UIDs valid * OK [UIDNEXT 1] Predicted next UID * OK [HIGHESTMODSEQ 1] . OK [READ-WRITE] Select completed. I included the select to show that filesystem permissions are OK. Without ACL plugin (notice the \HasChildren here): r...@testvm06:~# telnet localhost 143 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. * OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE STARTTLS AUTH=PLAIN AUTH=LOGIN AUTH=CRAM-MD5] Dovecot ready. . login cite secret . OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE SORT THREAD=REFERENCES THREAD=REFS MULTIAPPEND UNSELECT IDLE CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH QUOTA] Logged in . list Public * LIST (\Noselect \HasChildren) . Public . OK List completed. Is this intended behaviour, am I just too stupid for ACLs or something completely different? I wonder how clients are supposed to get a listing of a public namespace... dovecot -n: # 1.2.2: /etc/dovecot/dovecot.conf # OS: Linux 2.6.26-2-amd64 x86_64 Debian 5.0.2 log_timestamp: %Y-%m-%d %H:%M:%S protocols: imap imaps managesieve listen(default): *:143 listen(imap): *:143 listen(managesieve): * ssl_listen(default): *:993 ssl_listen(imap): *:993 ssl_listen(managesieve): ssl_cert_file: /etc/ssl/owncerts/snakeoil.crt ssl_key_file: /etc/ssl/private/snakeoil.key login_dir: /var/run/dovecot/login login_executable(default): /usr/lib/dovecot/imap-login login_executable(imap): /usr/lib/dovecot/imap-login login_executable(managesieve): /usr/lib/dovecot/managesieve-login verbose_proctitle: yes mail_privileged_group: vmail mail_location: maildir:~/Maildir mbox_write_locks: fcntl dotlock mail_executable(default): /usr/lib/dovecot/imap mail_executable(imap): /usr/lib/dovecot/imap mail_executable(managesieve): /usr/lib/dovecot/managesieve mail_process_size: 1024 mail_plugins(default): quota imap_quota fts fts_squat acl mail_plugins(imap): quota imap_quota fts fts_squat acl mail_plugins(managesieve): mail_plugin_dir(default): /usr/lib/dovecot/modules/imap mail_plugin_dir(imap): /usr/lib/dovecot/modules/imap mail_plugin_dir(managesieve): /usr/lib/dovecot/modules/managesieve namespace: type: private separator: . inbox: yes list: yes subscriptions: yes namespace: type: public separator: . prefix: Public. location: maildir:/export/vmailboxes/public list: yes lda: postmaster_address: postmas...@test.cite.lan hostname: testvm06.test.cite.lan mail_plugins: quota sieve auth_socket_path: /var/run/dovecot/auth-master auth default: mechanisms: plain login cram-md5 passdb: driver: sql args: /etc/dovecot/dovecot-sql.conf userdb: driver: sql args: /etc/dovecot/dovecot-sql.conf socket: type: listen client: path: /var/spool/postfix/private/auth mode: 432 user: postfix group: sasl master: path: /var/run/dovecot/auth-master mode: 384 user: vmail group: vmail plugin: quota: maildir:User quota quota_warning: storage=80%% /usr/local/bin/quota-warning.sh 80 quota_warning: storage=95%% /usr/local/bin/quota-warning.sh 95 sieve: ~/.dovecot.sieve sieve_storage: ~/sieve sieve_extensions: +imapflags fts: squat fts_squat: partial=4 full=10 acl: vfile Cheers Stefan
[Dovecot] Performance problem with STATUS after upgrade (1.0.15 - 1.2.2)
Hello list, after upgrading dovecot from 1.0.15 to 1.2.2 (and carefully reading through the upgrading notes in the wiki), I got sieve, quota and fts up and running, but I'm now suffering some kind of performance problem with the STATUS command. Symptoms: Reading mail on the IMAP server itself with mutt, no TLS/SSL, connected through loopback interface. Whenever I idle a bit and then hit any key thereafter, for example to change into another mailbox, mutt will send a number of STATUS commands: # T 127.0.0.1:53604 - 127.0.0.1:143 [AP] DONE..a0070 STATUS postfix-buch (UIDNEXT UIDVALIDITY UNSEEN RECENT)..a0071 STATUS postfix-users (UIDNEXT UIDVALIDITY UNSEEN RECENT)..a0072 STATUS Trash (UIDNEXT UIDVALIDITY UNSEEN RECENT)..a0073 STATUS Sent (UIDNEXT UIDVALID ITY UNSEEN RECENT)..a0074 STATUS mailman-users (UIDNEXT UIDVALIDITY UNSEEN RECENT)..a0075 STATUS mailman-developers (UIDNEXT UIDVALIDITY UNSEEN RECENT)..a0076 STATUS de-postfix-users (UIDNEXT UIDVALIDITY UNSEEN RECENT)..a0077 STATUS amavis-users (UIDNEXT UIDVALIDITY UNSEEN RECENT)..a0078 STATUS spam (UIDNEXT UIDVALIDITY UNSEEN RECENT)..a0079 STATUS localreports (UIDNEXT UIDVALIDITY UNSEEN RECENT)..a0080 STATUS Drafts (UIDNEXT UIDVALIDITY UNSEEN R ECENT)..a0081 STATUS exim-users (UIDNEXT UIDVALIDITY UNSEEN RECENT).. # (The whole conversation is available as: http://www.incertum.net/~cite/dovecot-snoop.log) Those commands take almost one(!) second to complete. I've used strace to capture what happens and made the results available at http://www.incertum.net/~cite/imap.log. With 1.0.15, I never noticed this kind of delay, and reading mail feels really sluggish at the moment. Is there any way to improve performance? Configuration data: Filesystem mounted to /export/vmailboxes is an ext3: # tune2fs -l /dev/rootvg/mailhome_lv | grep ^Filesystem features Filesystem features: has_journal resize_inode dir_index filetype needs_recovery sparse_super large_file (needs_recovery is set because the filesystem is mounted, I umounted it, did fsck -Dfy and it didn't display that feature when unmounted). dovecot -n (also available as: http://www.incertum.net/~cite/dovecot-n.log): # 1.2.2: /etc/dovecot/dovecot.conf # OS: Linux 2.6.26-2-amd64 x86_64 Debian 5.0.2 log_timestamp: %Y-%m-%d %H:%M:%S protocols: imap imaps managesieve listen(default): *:143 listen(imap): *:143 listen(managesieve): * ssl_listen(default): *:993 ssl_listen(imap): *:993 ssl_listen(managesieve): ssl_cert_file: /etc/ssl/owncerts/mail_incertum_net.crt ssl_key_file: /etc/ssl/private/mail_incertum_net.key login_dir: /var/run/dovecot/login login_executable(default): /usr/lib/dovecot/imap-login login_executable(imap): /usr/lib/dovecot/imap-login login_executable(managesieve): /usr/lib/dovecot/managesieve-login verbose_proctitle: yes mail_privileged_group: vmail mail_location: maildir:~/Maildir mbox_write_locks: fcntl dotlock mail_executable(default): /usr/lib/dovecot/imap mail_executable(imap): /usr/lib/dovecot/imap mail_executable(managesieve): /usr/lib/dovecot/managesieve mail_process_size: 1024 mail_plugins(default): quota imap_quota fts fts_squat mail_plugins(imap): quota imap_quota fts fts_squat mail_plugins(managesieve): mail_plugin_dir(default): /usr/lib/dovecot/modules/imap mail_plugin_dir(imap): /usr/lib/dovecot/modules/imap mail_plugin_dir(managesieve): /usr/lib/dovecot/modules/managesieve lda: postmaster_address: postmas...@incertum.net hostname: mail.incertum.net mail_plugins: quota sieve auth_socket_path: /var/run/dovecot/auth-master auth default: mechanisms: plain login cram-md5 passdb: driver: sql args: /etc/dovecot/dovecot-sql.conf userdb: driver: sql args: /etc/dovecot/dovecot-sql.conf socket: type: listen client: path: /var/spool/postfix/private/auth mode: 432 user: postfix group: sasl master: path: /var/run/dovecot/auth-master mode: 384 user: vmail group: vmail plugin: quota: maildir:User quota quota_warning: storage=80%% /usr/local/bin/quota-warning.sh 80 quota_warning: storage=95%% /usr/local/bin/quota-warning.sh 95 sieve: ~/.dovecot.sieve sieve_storage: ~/sieve sieve_extensions: +imapflags fts: squat fts_squat: partial=4 full=10 SQL-Configuration: # grep -v '^ *\(#.*\)\?$' dovecot-sql.conf driver = pgsql connect = hostaddr=333.33.33.3 port=5432 dbname=secret user=secret password=secret sslmode=require default_pass_scheme = PLAIN password_query = SELECT login AS user, password FROM virtual_user_maps WHERE login IN ('%u', '%n') user_query = SELECT vum.uid, vum.gid, ('*:storage=' || vum.quota_kbytes || 'k') AS quota_rule, ('/export/vmailboxes/' || SUBSTR(vum.login, 1, 1) || '/' || vum.login) AS home FROM virtual_mailbox_domains AS vmd LEFT JOIN virtual_mailbox_maps AS vmm ON (vmd.id =
Re: [Dovecot] Performance problem with STATUS after upgrade (1.0.15 - 1.2.2)
Quick follwup to myself: * Stefan Förster cite+dovecot-us...@incertum.net: (The whole conversation is available as: http://www.incertum.net/~cite/dovecot-snoop.log) [...] dovecot -n (also available as: http://www.incertum.net/~cite/dovecot-n.log): I've noticed some people trying to access this URLs with the enclosing ) still in place. Of course, the URLs are: http://www.incertum.net/~cite/dovecot-snoop.log http://www.incertum.net/~cite/dovecot-n.log And in case that it wasn't clear: This... http://www.incertum.net/~cite/imap.log ...is the strace output. Any help/insights are really appreciated. Cheers Stefan
Re: [Dovecot] Performance problem with STATUS after upgrade (1.0.15 - 1.2.2)
Another follow-up on my first posting: * Stefan Förster cite+dovecot-us...@incertum.net: Those commands take almost one(!) second to complete. I've used strace to capture what happens and made the results available at http://www.incertum.net/~cite/imap.log. Comaring this to a 1.0.15, the main difference seems to be that the dovecot-uidlist file is rewritten every time I issue a STATUS command. Here's what 1.0.15 does: read(0, a0071 STATUS \postfix-users\ (UID..., 4072) = 66 setsockopt(1, SOL_TCP, TCP_CORK, [1], 4) = 0 stat(/export/vmailboxes/c/cite/Maildir/.postfix-users, {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0 stat(/export/vmailboxes/c/cite/Maildir/.postfix-users/cur, {st_mode=S_IFDIR|0700, st_size=1650688, ...}) = 0 stat(/export/vmailboxes/c/cite/Maildir/.postfix-users/new, {st_mode=S_IFDIR|0700, st_size=36864, ...}) = 0 stat(/export/vmailboxes/c/cite/Maildir/.postfix-users/tmp, {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0 stat(/export/vmailboxes/c/cite/Maildir/.postfix-users, {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0 stat(/export/vmailboxes/c/cite/Maildir/.postfix-users/dovecot-shared, 0x7fff35082530) = -1 ENOENT (No such file or directory) brk(0x8b) = 0x8b gettimeofday({1249300019, 466489}, NULL) = 0 open(/export/vmailboxes/c/cite/Maildir/.postfix-users/dovecot.index, O_RDWR) = 7 alarm(120) = 0 fcntl(7, F_SETLKW, {type=F_RDLCK, whence=SEEK_SET, start=0, len=0}) = 0 alarm(0)= 120 fstat(7, {st_mode=S_IFREG|0600, st_size=289344, ...}) = 0 mmap(NULL, 289344, PROT_READ|PROT_WRITE, MAP_SHARED, 7, 0) = 0x7fde2d02c000 open(/export/vmailboxes/c/cite/Maildir/.postfix-users/dovecot.index.log, O_RDWR) = 8 fstat(8, {st_mode=S_IFREG|0600, st_size=296440, ...}) = 0 pread(8, \1\0\30\0Y\315vJ\1\0\0\0\0\0\0\0\0\0\0\0Y\315vJ..., 24, 0) = 24 fcntl(7, F_SETLK, {type=F_UNLCK, whence=SEEK_SET, start=0, len=0}) = 0 access(/export/vmailboxes/c/cite/Maildir/.postfix-users/cur, W_OK) = 0 stat(/export/vmailboxes/c/cite/Maildir/.postfix-users/new, {st_mode=S_IFDIR|0700, st_size=36864, ...}) = 0 stat(/export/vmailboxes/c/cite/Maildir/.postfix-users/cur, {st_mode=S_IFDIR|0700, st_size=1650688, ...}) = 0 fstat(7, {st_mode=S_IFREG|0600, st_size=289344, ...}) = 0 stat(/export/vmailboxes/c/cite/Maildir/.postfix-users/dovecot.index, {st_mode=S_IFREG|0600, st_size=289344, ...}) = 0 alarm(120) = 0 fcntl(7, F_SETLKW, {type=F_RDLCK, whence=SEEK_SET, start=0, len=0}) = 0 alarm(0)= 120 fstat(8, {st_mode=S_IFREG|0600, st_size=296440, ...}) = 0 mmap(NULL, 296440, PROT_READ, MAP_SHARED, 8, 0) = 0x7fde2cfe3000 madvise(0x7fde2cfe3000, 296440, MADV_SEQUENTIAL) = 0 fcntl(7, F_SETLK, {type=F_UNLCK, whence=SEEK_SET, start=0, len=0}) = 0 gettimeofday({1249300019, 471527}, NULL) = 0 write(1, * STATUS \postfix-users\ (RECENT ..., 111) = 111 setsockopt(1, SOL_TCP, TCP_CORK, [0], 4) = 0 gettimeofday({1249300019, 471961}, NULL) = 0 epoll_wait(4, unfinished ... As you can see, dovecot-uidlist istn recreated. Is this intended behaviour, some unfortunate side effect of mounting the partition with relatime or something completely different, perhaps something about my plugin (quota, sieve, fts)? Ciao Stefan -- Stefan Förster http://www.incertum.net/ Public Key: 0xBBE2A9E9 UNIX *is* user-friendly; it's just picky about its friends.