[sheepdog] [PATCH V4 2/2] collie: optimize 'collie vdi check' command

Yunkai Zhang yunkai.me at gmail.com
Mon Sep 3 17:53:33 CEST 2012



发自我的 iPhone

在 2012-9-3,23:34,MORITA Kazutaka <morita.kazutaka at lab.ntt.co.jp> 写道:

> At Mon, 3 Sep 2012 23:18:11 +0800,
> Yunkai Zhang wrote:
>> 
>> 
>> 
>> 发自我的 iPhone
>> 
>> 在 2012-9-3,22:44,MORITA Kazutaka <morita.kazutaka at lab.ntt.co.jp> 写道:
>> 
>>> At Mon, 3 Sep 2012 22:14:56 +0800,
>>> Yunkai Zhang wrote:
>>>> 
>>>> If 'collie vdi check' must read valid objects, what does it check?
>>> 
>>> It fixes vdi inconsistency after gateway (and qemu) failure.  It looks
>>> completely wrong for clients to see data inconsistency in other
>>> scenarios.
>> 
>> How can we know wether a cluster is consistent?
>> 
>> Can we promise sheepdog's code is always correct, will not cause data inconsistency except for gateway failure?
>> 
>> After we found inconsistency, showing the difference to user instead of repairing it directly, can give us a chance to check if program's bug or just gateway failure, doesn't it?
> 
> Please give me a concrete example.

I have no concrete example,  but I have imagination, this patch just suppose there would be some bugs in sheepdog, of course you can believe that sheepdog is perfect.  


> 
> When 'collie vdi check' shows that some sha1 values are A and the
> others are B, how can you determine whether it is caused by a
> program's bug or just gateway failure?


By analyzing log file.

>  Just showing "there is data
> inconsistency in object xxxx" isn't enough?
> 
> Thanks,
> 
> Kazutaka



More information about the sheepdog mailing list