← Back to team overview

openstack team mailing list archive

Re: Swift Consistency Guarantees?


On 31/01/2012, at 4:45 AM, Caitlin Bestler wrote:

> Mark Nottingham asked:
>> Why not just use
>>  Cache-Control: no-cache?
>> That way, intervening caches will do the right thing too...
> Even with no caching anywhere you still have N replicas (typically three) that will be updated in an arbitrary order,
> and clients that read from any one of those replicas.

Right.. all that I'm saying is that the semantics of CC: no-cache are effectively the same as X-Newest, and have the nice side effect of busting any intermediary caches along the way. 

> Unless  you implement a draconian global locking scheme there is nothing you can do to prevent a client from reading
> a copy that has just been rendered obsolete by another client completing the edit of the (N+1)/2th replica.


> If the goal is to validate with all N servers then this should be a special transaction. The benefits of caching should remain
> In place for typical reads.

and they will, if you don't use CC: no-cache on them.


Mark Nottingham   http://www.mnot.net/

Follow ups