On Sep 14, 2010, at 1:15 AM, FUJITA Tomonori wrote:

> Sorry for the late reply, just got back from vacation.
> 
> 2010/9/7 Gregory Holt <[email protected]>:
>> On Sep 6, 2010, at 4:18 AM, FUJITA Tomonori wrote:
>> 
>>> I've just started playing with swift, implemented block storage
>>> service (iSCSI) on the top of swift:
>> 
>> This sounds quite interesting but I'm wondering: what do you do with regards 
>> to inconsistency periods with Swift?
> 
> What data consistency model does swift use?
> 
> Read-your-writes consistency works nicely for the iSCSI service. We
> could live with weaker consistency models though.

Swift has the small possibility you'd read older data, even just after writing 
newer data with the same HTTP Keep-Alive connection.

Example scenario: PUT obj(v1) goes to the three replica nodes desired (1-2-3), 
no problem on read; then PUT obj(v2) times out on the first replica node 
(x-2-3) but succeeds with two of the three saving the data, but a read that 
succeeds on node 1 will return obj(v1).

We have discussed making read hit all known replicas and return the greatest 
version, but we have to test the impact of that at scale first.

Even with greatest version support, there always is a chance that only one node 
could be reached on read, and that node might have older data.


_______________________________________________
Mailing list: https://launchpad.net/~openstack
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp

Reply via email to