git-annex/doc/design
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
..
adjusted_branches Added a comment: adjusted branche to "focus" on a specific subtree 2016-08-22 14:19:57 +00:00
assistant correct spelling mistakes 2017-02-12 17:30:23 -04:00
encryption
exporting_trees_to_special_remotes update proposed external special remote protocol 2017-08-28 15:34:26 -04:00
external_special_remote_protocol reply 2016-05-23 15:45:56 -04:00
git-remote-daemon Added a comment: Rolling hash chunking 2014-04-04 14:16:25 +00:00
iabackup Added a comment: 14 of 21PB, actually 2015-04-30 02:58:05 +00:00
metadata followup 2015-04-09 14:33:11 -04:00
new_repo_versions devblog 2016-05-04 14:39:53 -04:00
requests_routing Added a comment: design phase only 2015-08-18 19:02:30 +00:00
adjusted_branches.mdwn link to the adjust manpage 2016-06-23 14:39:49 +00:00
assistant.mdwn clarify that this is mostly done (i think?) 2014-04-07 04:41:56 +00:00
balanced_preferred_content.mdwn Fix a typo 2016-02-08 10:54:08 -04:00
caching_database.mdwn correct spelling mistakes 2017-02-12 17:30:23 -04:00
encryption.mdwn clean up 2015-12-11 11:03:22 -04:00
exporting_trees_to_special_remotes.mdwn make storeExport atomic 2017-08-31 14:24:32 -04:00
external_special_remote_protocol.mdwn external: nice error message for keys with spaces in their name 2017-08-17 16:18:34 -04:00
gcrypt.mdwn automatically derive an annex-uuid from a gcrypt-uuids 2013-09-05 16:02:39 -04:00
git-remote-daemon.mdwn update 2015-01-15 15:58:56 -04:00
iabackup.mdwn minor typo fixes throughout 2016-06-02 11:22:18 -04:00
metadata.mdwn update for v6 unlocked files 2015-12-26 14:59:06 -04:00
new_repo_versions.mdwn comment 2016-04-20 14:24:26 -04:00
preferred_content.mdwn preferred content stability analysis 2014-01-22 15:55:44 -04:00
requests_routing.mdwn keep track of satisfied requests, and summarize 2014-05-09 16:41:05 -03:00
roadmap.mdwn updates 2016-12-13 14:35:58 -04:00