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 |