possible seen flag db corruption

David Mansfield cyrus at dm.cobite.com
Wed Dec 11 16:29:49 EST 2013



On 12/11/2013 03:49 PM, Bron Gondwana wrote:
>
>
> On Thu, Dec 12, 2013, at 05:33 AM, David Mansfield wrote:
>> Hi All,
>>
>> I'm tracing a problem that is reproducible on cyrus-imapd 2.3.16 on
>> centos 6, that occurs when messages are delivered to a mailbox while a
>> client is setting flags and retrieving existing messages.
>
> This sort of thing is a problem with 2.3.x and earlier unfortunately.
>
> I spent a couple of years rewriting all the internals for 2.4 so that changes really are atomic and seen state is managed within the same transaction as everything else.
>
> Bron.
>

Thanks for the response, Bron. I figured as much - I'm imagining some 
un-initialized bitfield somewhere...

Since you mentioned it ("same transaction as everything else"), I have a 
quick question about EXPUNGE.  If one session has done a SEARCH (say on 
message id), and another session does expunge and some message is 
removed at a lesser sequence number, then the first session does STORE 
to flag that message based on the sequence number returned by the SEARCH 
(say \Deleted), is that protected by a transaction or is there a race 
condition in this scenario.

-- 
Thanks,
David Mansfield,
Cobite, INC.



More information about the Cyrus-devel mailing list