[sheepdog] read/write during recovery

Liu Yuan namei.unix at gmail.com
Thu Jul 26 09:06:28 CEST 2012


On 07/26/2012 03:01 PM, Dietmar Maurer wrote:
>>> How do you detect the point in time when it is safe to remove an
>>> object (because all new members have all data the need)?
>>
>> Sorry, I'm afraid I don't understand the question.  Which objects do we need
>> to remove?  Can you give an example?
> 
> When we re-balance. For example
> 
> 1.) obj is store on Nodes A and B
> 2.) we add new node C, which changes obj mapping to B and C
> 3.) C recovers, and copies obj data
> 4.) We can now remove obj from Node A
> 

Due to the fact that we are not easily to get the agreement(one of most
difficult aspect in distributed system), we don't actually remove the
object that is already migrated.

We have a command collie cluster cleanup to manually remove these unused
objects. Also, restarting sheep will trigger an internal cleanup
operation of that sheep too.

Thanks,
Yuan




More information about the sheepdog mailing list