From 1dc802a44583252d38676037b49c610efc70a231 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Mon, 30 Nov 2020 12:44:40 -0400 Subject: [PATCH] comment --- ...nt_2_db65c2eeb11a9922ca35872a45acd61c._comment | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 doc/bugs/async_external_special_remote__39__s_stdin_not_closed/comment_2_db65c2eeb11a9922ca35872a45acd61c._comment diff --git a/doc/bugs/async_external_special_remote__39__s_stdin_not_closed/comment_2_db65c2eeb11a9922ca35872a45acd61c._comment b/doc/bugs/async_external_special_remote__39__s_stdin_not_closed/comment_2_db65c2eeb11a9922ca35872a45acd61c._comment new file mode 100644 index 0000000000..73251fdd45 --- /dev/null +++ b/doc/bugs/async_external_special_remote__39__s_stdin_not_closed/comment_2_db65c2eeb11a9922ca35872a45acd61c._comment @@ -0,0 +1,15 @@ +[[!comment format=mdwn + username="joey" + subject="""comment 2""" + date="2020-11-30T16:40:41Z" + content=""" +Analysis: It's hanging on 'hClose hout'. + +I think that's because there's a thread that is waiting for the next line +of output from the remote. hClose ends up taking a MVar, if the read +keeps that MVar unpopulate hClose can then hang. This is surprising; I've +never seen hClose hang, and the docs don't mention it can. + +Solution will be to cleanly shutdown the async IO threads before shutting +down the external process. +"""]]