--On Monday, February 13, 2017 13:48 -0500 Ted Lemon <mellon@xxxxxxxxx> wrote: >> The model of IMAP is that: >> >> * Each message resides in a single mailbox, >> * Each message has a set of independent flags, >> * Each message is immutable. > > This would be unfortunate. The "mailbox" paradigm really > doesn't work well—as someone mentioned earlier in this > thread, it makes synchronization needlessly slow and painful, > and it also restricts the end user's ability to tag messages > with more than one meaning. Just a clarification in the hope of understanding where we disagree... I would have described the IMAP model as assuming that each message is associated with a single mailbox. Most of the issues you mention are associated with "resides". Up to a point, it is possible to use a Google-like arrangement to support all of the IMAP functionality I can think of simply by attaching a label or attribute with the mailbox name and constraining retrievals, searches, and displays accordingly. That is exactly what at least some of the systems that use a Relational DBMS as a mailstore do, whether they then have "relation per user" or treat the UserID as yet another attribute. That may not be the best thing to do and may or may not provide equivalent functionality and efficiency for various operations. In particular, it still implies some advantages for having all of the messages associated with a given mailbox on the same host or closely-related set of hosts and I have no idea whether gmail does that or not. But, if one goes much past that, my earlier comments about a switch in reference models and fundamental architecture apply. john