Save cached files to a temporary location first

This commit is contained in:
greatroar
2020-06-24 15:22:51 +02:00
committed by Michael Eischer
parent f9b6f8fd45
commit ea04f40eb3
4 changed files with 110 additions and 81 deletions

View File

@@ -0,0 +1,12 @@
Bugfix: Make cache crash-resistant and usable by multiple concurrent processes
The restic cache directory ($RESTIC_CACHE_DIR) could end up in a broken state
in the event of restic (or the OS) crashing. This is now less likely to occur
as files are downloaded to a temporary location before being moved in place.
This also allows multiple concurrent restic processes to operate on a single
repository without conflicts. Previously, concurrent operations could cause
segfaults because the processes saw each other's partially downloaded files.
https://github.com/restic/restic/issues/2345
https://github.com/restic/restic/pull/2838