git-annex/doc/design
Joey Hess a49d300545
async exception safety for external special remote processes
Since an external process can be in the middle of some operation when an
async exception is received, it has to be shut down then. Using
cleanupProcess will close its IO handles and send it a SIGTERM.

If a special remote choses to catch SIGTERM, it's fine for it to do some
cleanup then, but until it finishes, git-annex will be blocked waiting
for it. If a special remote blocked SIGTERM, it would cause a hang.
Mentioned in docs.

Also, in passing, fixed a FD leak, it was not closing the error handle
when shutting down the external. In practice that didn't matter before because
it was only run when git-annex was itself shutting down, but now that it
can run on exception, it would have been a problem.
2020-06-09 12:22:14 -04:00
..
adjusted_branches Added a comment: adjusted branche to "focus" on a specific subtree 2016-08-22 14:19:57 +00:00
assistant Added a comment: Commits could be rate-limited too 2019-09-29 23:03:47 +00:00
encryption
exporting_trees_to_special_remotes Added a comment 2018-02-07 20:01:53 +00:00
external_special_remote_protocol some improvements to docs 2019-11-11 12:52:45 -04:00
git-remote-daemon
iabackup
metadata
new_repo_versions
p2p_protocol comment 2019-04-03 13:11:34 -04:00
requests_routing Added a comment: Friendly bump to keep on the radar 2019-10-24 09:26:23 +00:00
adjusted_branches.mdwn link to the adjust manpage 2016-06-23 14:39:49 +00:00
assistant.mdwn
balanced_preferred_content.mdwn
caching_database.mdwn correct spelling mistakes 2017-02-12 17:30:23 -04:00
encryption.mdwn Fix typo remotes.log -> remote.log 2020-03-28 13:36:45 +00:00
exporting_trees_to_special_remotes.mdwn add design document for import tree 2019-02-20 12:12:32 -04:00
external_special_remote_protocol.mdwn async exception safety for external special remote processes 2020-06-09 12:22:14 -04:00
gcrypt.mdwn
git-remote-daemon.mdwn
iabackup.mdwn Fix spelling in doc/design/iabackup.mdwn 2018-06-03 12:28:26 +00:00
importing_trees_from_special_remotes.mdwn improve docs about removeExportDirectory 2019-05-28 11:16:01 -04:00
metadata.mdwn
new_repo_versions.mdwn
p2p_protocol.mdwn Fixed some other potential hangs in the P2P protocol 2018-11-06 14:52:32 -04:00
preferred_content.mdwn
requests_routing.mdwn
roadmap.mdwn typo 2020-03-25 13:20:24 -04:00