[Sheepdog] [PATCH 2/2] object cache: introduce async flush

Liu Yuan namei.unix at gmail.com
Tue Apr 3 19:19:10 CEST 2012


On 04/04/2012 01:00 AM, MORITA Kazutaka wrote:
> At Mon,  2 Apr 2012 16:21:11 +0800,
> Liu Yuan wrote:
>>
>> From: Liu Yuan <tailai.ly at taobao.com>
>>
>> We async flush dirty object as default to achieve the best performance.
>> If users prefer strong consistency over performance, users can launch
>> sheep with -S or --sync option.
>>
>> We need async flush because:
>> 	1) some APP are responsive time sensitive, the writeback of dirty bits in
>> 	the guest will mostly hurt RT because guest need to await its completion.
>> 	This is a considerably long operation in the sheep cluster.
>> 	2) some APP are just memory and CPU intensive, has little of concern of disk
>> 	data. (For e.g, just use disk to store logs of APP)
>> 	3) People simply prefer performance over consistency.
> 
> Sheepdog is a block device storage.  This kind of feature must NOT be
> default.  In addition, we had better show a warning about a risk of
> reading old data, which could cause a filesystem corruption, when
> users enable this feature.
> 

Okay, I'll submit a patch to make it optional.

But in which way we'll risk to read stale data? Guests always try to read objects from
cache with cache enabled, IMO.

-- 
thanks,
Yuan



More information about the sheepdog mailing list