Merkle trees / hashes can help a server maintained graph of objects survive "Bitrot" (http://arstechnica.com/information-technology/2014/01/bitrot-and-atomic-cows-inside-next-gen-filesystems/
- data in SSD or HD being corrupted by (say) nutrinos over time. See also a guy/gal lamenting their corrupted photo collection - https://blog.barthe.ph/2014/06/10/hfs-plus-bit-rot/)
A svn server, in some background activity could detect that bitrot has happened by calculating the hashes afresh, then ask a replica for its version of the same file_at_revision to heal it silently.
Of course you could take the policy view that subversion should rely on a file system that can deliberately repair corruptions - https://blogs.oracle.com/timc/entry/demonstrating_zfs_self_healing - though BTRFS may also repair corruptions. If you do it in Svn itself, you could take advantage of *ordinary* file systems, and the fact that people wanting their (say) photos to survive a house fire, should probably have their in-house file-sync server (say Raspberry Pi + SDCard) replicating to something outside the house too.
Received on 2016-09-26 14:35:00 CEST