Could you elaborate? By repair you mean that one or more of the original hosts are offline or no longer have the file? So, in that case if there is a local copy the file will be repaired? What happens if the file cannot be repaired? If it can still be retrieved from remaining hosts, is it renewed? If repair is attempted, and file does not exist locally, then what happens? Would be nice with a small flow diagram that outlines the intended, and currently implemented actions, that are taken at each juncture in the renewal/repair process.
By repair you mean that one or more of the original hosts are offline or no longer have the file?
Yeah, 'repair' happens when a host is no longer online and the redundancy of the file has fallen below some threshold. New hosts will be chosen and the file will be restored to full redundancy.
What happens if the file cannot be repaired? If it can still be retrieved from remaining hosts, is it renewed?
The file will be continued to be renewed as long as there's a minimum amount of redundancy. We'll probably implement it (in 050) so that if redundancy falls below some threshold the client will re-download the file and do proper remote repairs. Not fully sure yet.
Would be nice with a small flow diagram
Hopefully not needed. Ideally the file will repair itself under all circumstances. It'll do local repairs at some low threshold and remote repairs at a much higher threshold. You will run into problems if you don't run Sia often enough though, as Sia can't do any of the renewing or repairing if it isn't running. Right now you'd want to run it at least once a week, as the software matures we're hoping to get that out to 6 weeks or maybe even 12 months.