[Dovecot] virtual mailbox / INTHREAD use case, issues, questions

David Abrahams dave at boostpro.com
Wed Jan 6 18:50:04 EET 2010


At Wed, 6 Jan 2010 14:17:40 +0200,
Timo Sirainen wrote:
> 
> On 4.1.2010, at 20.47, David Abrahams wrote:
> 
> > 1. I had to manually create the virtual folder for all my users or
> >   they couldn't access their mail at all.  Is this fixed in 2.0?
> 
> No.

OK, is it considered a bug that should be addressed?  IMO there should
at least be a way to tell dovecot to ignore the non-existence of a
particular folder.

> > 2. My users were getting errors when accessing via POP3.  The possible
> >   meaning of such a virtual folder under POP3 is lost on me, but I
> >   had to enable the virtual plugin for that protocol too.  I think
> >   that should at least be in the documentation, or better yet the
> >   requirement should that it be enabled for POP3 should be dropped.
> 
> I think you could put the virtual namespace inside protocol imap {} section.

I'm pretty sure I tried that and it didn't work for some reason.
Unfortunately I don't remember the reason, so I could be mistaken.

> > 3. I couldn't get the virtual "conversation view" inbox to show any
> >   messages.  But maybe that's because of a possible issue I describe
> >   below with x-mailbox

> > 5. The "all" virtual mailbox would only show 89 messages.  I switched
> >   it to be a mirror of my "archive" mailbox and the number started to
> >   look more reasonable.  This could be the "lots of mailboxes" bug
> >   describe in
> >   http://dovecot.org/list/dovecot-news/2009-December/000145.html
> 
> "lots of mailboxes" should cause error to be logged.

What does the error look like?  I could search my logs for it.

> > 7. I tried to create an IMAP search, rather than a virtual folder,
> >   that looked for x-mailbox INBOX header like the virtual folder
> >   does.  It too came up empty.  It doesn't exactly surprise me
> >   because I don't see an x-mailbox header in any of these messages.
> 
> x-mailbox doesn't use a header, it uses the actual mailbox name
> where the message exists.

Oh... what if the message exists in multiple mailboxes?  Typically
anything in INBOX can also be found in my "all mail" archive.

I guess that means it's crucial that, whatever else I do, INBOX should
be part of the "all mail" virtual folder in order for this to work.  I
didn't quite understand that before, and I think it's important to
have a description somewhere of how x-mailbox works that would help me
to get to that conclusion.  Certainly the existing description at
http://wiki.dovecot.org/Plugins/Virtual that it represents the
"original" mailbox isn't adequate for that purpose.

> > Lastly, I want to report that for me, the speed of these IMAP searches
> > doesn't begin to approach what I can do with mairix if I want a
> > message's entire thread.  I'm happy to use mairix, although it would
> > be nicer not to duplicate that capability if it's already in the
> > server.  But it needs to be fast.  Is there something I can do to make
> > it go faster?
> 
> How slow is it? How many messages do you have? I think it should be pretty fast.

150523 messages in 2.6G

> Anyway, dovecot -n output and contents of dovecot-virtual file could help figuring out what your problem is.

Having got the x-mailbox insight (I think---thanks), I have tried 
the following combinations:

  # ~/Maildir/virtual/INBOX/dovecot-virtual
  INBOX
  zz_archive*
    inthread refs x-mailbox inbox

shows only messages in INBOX. THe archives are actually in folders
like zz_archive.2010.01

---

  # ~/Maildir/virtual/all/dovecot-virtual
  INBOX
  zz_archive*
    all

  # ~/Maildir/virtual/INBOX/dovecot-virtual
  virtual.all
    inthread refs x-mailbox inbox

shows only messages in INBOX

---

  # ~/Maildir/virtual/all/dovecot-virtual
  *
    all

  # ~/Maildir/virtual/INBOX/dovecot-virtual
  virtual.all
    inthread refs x-mailbox inbox

Appears to hang

---

  # ~/Maildir/virtual/INBOX/dovecot-virtual
  INBOX
  zz_archive.*.*
    inthread refs x-mailbox inbox

Appears to hang.  For example, the little pie chart in Apple Mail that
shows mailbox scanning progress is stopped.  Wanderlust gets totally
stuck.

---


# 1.2.8: /usr/local/etc/dovecot.conf
# OS: FreeBSD 6.2-RELEASE amd64  
protocols: imap pop3 imaps pop3s
listen: 64.156.193.20
ssl_ca_file: /etc/ssl/private/network_solutions_ca.crt
ssl_cert_file: /etc/ssl/certs/www.boostpro.com.crt
ssl_key_file: /etc/ssl/private/www.boostpro.com.key
login_dir: /var/run/dovecot/login
login_executable(default): /usr/local/libexec/dovecot/imap-login
login_executable(imap): /usr/local/libexec/dovecot/imap-login
login_executable(pop3): /usr/local/libexec/dovecot/pop3-login
verbose_proctitle: yes
first_valid_gid: 0
mail_privileged_group: mail
mail_location: maildir:~/Maildir
mail_executable(default): /usr/local/libexec/dovecot/imap
mail_executable(imap): /usr/local/libexec/dovecot/imap
mail_executable(pop3): /usr/local/libexec/dovecot/pop3
mail_plugins(default): virtual autocreate
mail_plugins(imap): virtual autocreate
mail_plugins(pop3): virtual
mail_plugin_dir(default): /usr/local/lib/dovecot/imap
mail_plugin_dir(imap): /usr/local/lib/dovecot/imap
mail_plugin_dir(pop3): /usr/local/lib/dovecot/pop3
imap_client_workarounds(default): delay-newmail outlook-idle netscape-eoh tb-extra-mailbox-sep
imap_client_workarounds(imap): delay-newmail outlook-idle netscape-eoh tb-extra-mailbox-sep
imap_client_workarounds(pop3): 
pop3_client_workarounds(default): 
pop3_client_workarounds(imap): 
pop3_client_workarounds(pop3): outlook-no-nuls oe-ns-eoh
namespace:
  type: private
  inbox: yes
  list: yes
  subscriptions: yes
namespace:
  type: private
  separator: .
  prefix: virtual.
  location: virtual:~/Maildir/virtual
  list: yes
  subscriptions: yes
lda:
  postmaster_address: postmaster at boost-consulting.com
  mail_plugins: sieve virtual
  sendmail_path: /usr/sbin/sendmail
auth default:
  master_user_separator: *
  verbose: yes
  debug: yes
  debug_passwords: yes
  passdb:
    driver: passwd-file
    args: /usr/local/etc/dovecot/master.passwd
    master: yes
  passdb:
    driver: pam
  userdb:
    driver: passwd
  socket:
    type: listen
    client:
      path: /var/run/dovecot/auth-client
      mode: 438
plugin:
  fts: squat lucene


--
Dave Abrahams           Meet me at BoostCon: http://www.boostcon.com
BoostPro Computing
http://www.boostpro.com



More information about the dovecot mailing list