MBOX-Line: From brong at fastmail.fm  Thu May  3 14:02:30 2012
To: imap-protocol@u.washington.edu
From: Bron Gondwana <brong@fastmail.fm>
Date: Fri Jun  8 12:34:48 2018
Subject: [Imap-protocol] Concurrent flag changes
In-Reply-To: <A2C8BAB1-76FF-4468-A7B6-45FEE67D8FBA@iki.fi>
References: <14DB8F84-E3D5-426A-BBF6-5B4746B6E3DF@iki.fi>
	<4FA270A0.3040003@gulbrandsen.priv.no>
	<A2C8BAB1-76FF-4468-A7B6-45FEE67D8FBA@iki.fi>
Message-ID: <20120503210230.GD13234@launde.brong.net>

On Thu, May 03, 2012 at 09:00:35PM +0300, Timo Sirainen wrote:
> Then there's a real conflict:
> 
> S1: +FLAGS k
> S2: -FLAGS k
> result: use whichever server changed it later
> 
> But the one that I'm not entirely sure about:
> 
> S1: FLAGS k
> S2: +FLAGS k2
> 
> If S1 is done before S2, result: k k2
> If S1 is done after S2, result: k? Or perhaps still "k k2", because S1 definitely didn't know that S2 had added a flag.

I've been thinking about how to handle that case a bit too, and my
eventual position is "all keywords start unset, so in the event of
a conflict, the act of setting the keyword wins".  I.e., the result
should be 'k k2' if you can't resolve timestamps to be certain what
what was intended.

Bron.

