git-annex/Remote
Joey Hess bb08b1abd2
make storeExport atomic
This avoids needing to deal with the complexity of partially transferred
files in the export. We'd not be able to resume uploading to such a file
anyway, so just avoid them.

The implementation in Remote.Directory is not completely ideal, because
it could leave the temp file hanging around in the export directory.
This only happens if it's killed with -9, or there's a power failure;
normally viaTmp cleans up after itself, even when interrupted. I could
not see a better way to do it though, since the export directory might
be the root of a filesystem.

Also some design thoughts on resuming, which depend on storeExport being
atomic.

This commit was sponsored by Fernando Jimenez on Partreon.
2017-08-31 14:24:32 -04:00
..
Directory remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
External external: nice error message for keys with spaces in their name 2017-08-17 16:18:34 -04:00
Helper avoid the dashed ssh hostname class of security holes 2017-08-17 22:11:31 -04:00
Rsync adeiu, MissingH 2017-05-16 01:03:52 -04:00
WebDAV adeiu, MissingH 2017-05-16 01:03:52 -04:00
BitTorrent.hs add API for exporting 2017-08-29 13:00:41 -04:00
Bup.hs add API for exporting 2017-08-29 13:00:41 -04:00
Ddar.hs add API for exporting 2017-08-29 13:00:41 -04:00
Directory.hs make storeExport atomic 2017-08-31 14:24:32 -04:00
External.hs add API for exporting 2017-08-29 13:00:41 -04:00
GCrypt.hs add API for exporting 2017-08-29 13:00:41 -04:00
Git.hs add API for exporting 2017-08-29 13:00:41 -04:00
Glacier.hs add API for exporting 2017-08-29 13:00:41 -04:00
Hook.hs add API for exporting 2017-08-29 13:00:41 -04:00
List.hs stub Remote.P2P 2016-12-06 12:27:58 -04:00
P2P.hs add API for exporting 2017-08-29 13:00:41 -04:00
Rsync.hs add API for exporting 2017-08-29 13:00:41 -04:00
S3.hs add API for exporting 2017-08-29 13:00:41 -04:00
Tahoe.hs add API for exporting 2017-08-29 13:00:41 -04:00
Web.hs add API for exporting 2017-08-29 13:00:41 -04:00
WebDAV.hs add API for exporting 2017-08-29 13:00:41 -04:00