[openstack-dev] [swift] what does swift do if the auditor find that all 3 replicas are corrupt?
abblly.daniel at gmail.com
Thu Nov 7 13:59:36 UTC 2013
Thanks very much for your help, and please see my inline comments/questions.
On Thu, Nov 7, 2013 at 2:30 AM, Samuel Merritt <sam at swiftstack.com> wrote:
> On 11/6/13 7:12 AM, Daniel Li wrote:
>> I have a question about swift: what does swift do if the auditor
>> find that all 3 replicas are corrupt?
>> will it notify the owner of the object(email to the account owner)?
>> what will happen if the GET request to the corrupted object?
>> will it return a special error telling that all the replicas are
>> Or will it just say that the object is not exist?
>> Or it just return one of the corrupted replica?
>> Or something else?
> If all 3 (or N) replicas are corrupt, then the auditors will eventually
> quarantine all of them, and subsequent GET requests will receive 404
No notifications are sent, nor is it really feasible to start sending them.
> "The auditor" is not a single process; there is one Swift auditor process
> running on each node in a cluster. Therefore, when an object is
> quarantined, there's no way for its auditor to know if the other copies are
> okay or not.
> Note that this is highly unlikely to ever happen, at least with the
> default of 3 replicas. When an auditor finds a corrupt object, it
> quarantines it (moves it to a "quarantines" directory).
Did you mean that when the auditor found the corruption, it did not copy
good replica from other object server to overwrite the corrupted one, it
just moved it to a quarantines directory?
Then, since that object is missing, the replication processes will recreate
> the object by copying it from a node with a good copy.
When did the replication processes recreated the object by copying it from
a node with a good copy? Does the auditor send a message to replication so
the replication will do the copy immediately? And what is a 'good' copy?
Does the good copy's MD5 value is checked before copying?
> You'd need to have all replicas become corrupt within a very short
> timespan so that the replicators don't get a chance to replace the damaged
> OpenStack-dev mailing list
> OpenStack-dev at lists.openstack.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the OpenStack-dev