I continue to experience this issue, so I thought I would re-post my inquiry.
We are testing with 1.2.9 and have found that with mail_full_filesystem_access set to 'yes', we cannot force indexes for folders under ~/mail to be stored in /var/dovecot/indexes/%u. /var/dovecot/indexes/%u/.imap/INBOX/dovecot.index* is created just fine, but everything else ends up in ~mail/.imap.
If I change mail_full_filesystem_access to 'no', then all indexes are created in the expected location:
$ ls -la /var/dovecot/indexes/blitz/ total 4 drwxr-xr-x 4 blitz popuser 512 Jan 25 11:46 . drwxrwxr-x 5 root popuser 512 Jan 22 16:16 .. drwxr-xr-x 3 blitz popuser 512 Jan 22 16:16 .imap drwxr-xr-x 3 blitz popuser 512 Jan 25 11:46 mail
(I probably need to set the sticky bit for this, but for testing this is OK)
We are setting the index location from /etc/passwd-dove:
blitz:x:14267:500::/usr/users/dialups/blitz::userdb_mail=mbox:~/:INBOX=/var/mail/%u:INDEX=/var/dovecot/indexes/%u
Is there a way to get this to function the way we'd like, with all indexes stored in /var/dovecot/indexes/u% ?
My apologies if I missed an explanation about this in the list archive.
Dave