Ask Your Question
0

SWIFT data consistency

asked 2014-01-10 19:31:45 -0500

garrett-s-page gravatar image

Since swift stores by default at least 3 replicas of data and last write wins, how does swift handle a file corruption situation? If you have a drive that's headed towards failure, but hasn't failed completely yet and corrupts some of the data on it how does swift detect this and handle it?

It would seem that it might detect the corrupted object as the latest write and replicate that throughout the rest of the cluster. Or all the timestamps would be the same, but the hashes would be different so how would it know which version is the correct one?

edit retag flag offensive close merge delete

2 answers

Sort by ยป oldest newest most voted
0

answered 2014-01-10 19:51:43 -0500

torgomatic gravatar image

The object auditor reads entire objects and compares their MD5 checksums to the ones stored in their metadata (in xattrs). If they don't match, the object is quarantined so that replication can replace it with a good copy.

Similarly, if you GET an object, the object server does the same computation and will quarantine if necessary.

edit flag offensive delete link more
0

answered 2014-01-10 20:28:43 -0500

garrett-s-page gravatar image

Thanks Samuel Merritt, that solved my question.

edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Get to know Ask OpenStack

Resources for moderators

Question Tools

1 follower

Stats

Asked: 2014-01-10 19:31:45 -0500

Seen: 32 times

Last updated: Jan 10 '14