46 lines
2.2 KiB
Plaintext
46 lines
2.2 KiB
Plaintext
MBOX-Line: From tss at iki.fi Wed Nov 16 06:43:45 2011
|
|
To: imap-protocol@u.washington.edu
|
|
From: Timo Sirainen <tss@iki.fi>
|
|
Date: Fri Jun 8 12:34:47 2018
|
|
Subject: [Imap-protocol] SELECT/EXAMINE clarification of UNSEEN
|
|
In-Reply-To: <1321454138.23977.140660999695557@webmail.messagingengine.com>
|
|
References: <1321346922.6321.140660999083661@webmail.messagingengine.com>
|
|
<4EC268D1.7010404@aol.com>
|
|
<1321364880.3715.140660999182809@webmail.messagingengine.com>
|
|
<alpine.OSX.2.00.1111151258420.38075@hsinghsing.panda.com>
|
|
<20111115233902.GA1071@brong.net>
|
|
<alpine.OSX.2.00.1111151543580.38075@hsinghsing.panda.com>
|
|
<D454A5E5-BEDE-47E6-909B-2C90463835EE@iki.fi>
|
|
<alpine.OSX.2.00.1111151800340.38075@hsinghsing.panda.com>
|
|
<20111116052757.GB12266@brong.net>
|
|
<alpine.WNT.2.00.1111152130220.912@Shimo-Tomobiki.Panda.COM>
|
|
<20111116065154.GA4452@brong.net>
|
|
<C38AC38C-01C6-46FD-A102-9CD703FC2281@iki.fi>
|
|
<1321454138.23977.140660999695557@webmail.messagingengine.com>
|
|
Message-ID: <1321454625.21919.548.camel@hurina>
|
|
|
|
On Wed, 2011-11-16 at 15:35 +0100, Bron Gondwana wrote:
|
|
>
|
|
> On Wednesday, November 16, 2011 2:38 PM, "Timo Sirainen" <tss@iki.fi> wrote:
|
|
> > Sounds like you're talking about your specific implementation, since I can't really think of why any of the above would be a problem or why there would be any need of blocking. I've actually thought of a way to create zero-lock-waits IMAP-compliant mailbox format on POSIX filesystems that do atomic writes with O_APPEND (practically all apparently), so I'm sure any blockers can be worked around.
|
|
>
|
|
> Teah - allowing gappyness certainly offers some nice properties.
|
|
|
|
There's no gappyness.
|
|
|
|
> But, I don't see how you can allow reads to see the messages until they are fully committed and indexed and "durable" for whatever level of guarantee you require. And because of that, I don't see how you can allow writes without ordering
|
|
> enforcement of "this commit is guaranteed to complete".
|
|
>
|
|
> Consider:
|
|
>
|
|
> * session A starts a write, gets GUID 101
|
|
> * session B starts a write, gets GUID 102
|
|
|
|
The messages don't get a (G)UID until they are complete and being
|
|
committed.
|
|
|
|
> * session B completes the write and return GUID 102 to its caller.
|
|
|
|
|
|
|