Subject: Re: [PATCH] git-remote-testgit: fix race when spawning fast-import

From: Clemens Buchacher <[email-masked]>
Date: Sun, 22 Apr 2012 01:42:12 +0200

On Sat, Apr 21, 2012 at 07:45:55PM -0400, Pete Wyckoff wrote:
>
> @@ -258,6 +264,7 @@ def main(args):
>  
>      more = True
>  
> +    sys.stdin = os.fdopen(sys.stdin.fileno(), 'r', 0)
>      while (more):
>          more = read_one_line(repo)

There's another read in do_import(). I am not sure if it also suffers
from this race condition, but it certainly has the potential.

> +test_expect_success 'racily pushing to local repo' '
> +	cp -a server server2 &&
> +	git clone "testgit::${PWD}/server2" localclone2 &&
> +	test_when_finished "rm -rf server2 localclone2" &&
> +	(cd localclone2 &&
> +	echo content >>file &&
> +	git commit -a -m three &&
> +	GIT_REMOTE_TESTGIT_SLEEPY=2 git push) &&
> +	compare_refs localclone2 HEAD server2 HEAD
> +'

Should this test be running unconditionally? It will delay the otherwise
almost instant test by 2 seconds.