Skip to content

Commit

Permalink
Merge branch 'pw/t5800-import-race-fix' into maint
Browse files Browse the repository at this point in the history
The test scaffolding for fast-import was flaky.

By Pete Wyckoff
* pw/t5800-import-race-fix:
  git-remote-testgit: fix race when spawning fast-import
  • Loading branch information
gitster committed May 7, 2012
2 parents a28b919 + 7fb8e16 commit 1d9fd66
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 0 deletions.
7 changes: 7 additions & 0 deletions git-remote-testgit.py
Expand Up @@ -22,6 +22,7 @@
_digest = sha.new
import sys
import os
import time
sys.path.insert(0, os.getenv("GITPYTHONLIB","."))

from git_remote_helpers.util import die, debug, warn
Expand Down Expand Up @@ -204,6 +205,11 @@ def read_one_line(repo):
"""Reads and processes one command.
"""

sleepy = os.environ.get("GIT_REMOTE_TESTGIT_SLEEPY")
if sleepy:
debug("Sleeping %d sec before readline" % int(sleepy))
time.sleep(int(sleepy))

line = sys.stdin.readline()

cmdline = line
Expand Down Expand Up @@ -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)

Expand Down
13 changes: 13 additions & 0 deletions t/t5800-remote-helpers.sh
Expand Up @@ -72,6 +72,19 @@ test_expect_success 'pushing to local repo' '
compare_refs localclone HEAD server HEAD
'

# Generally, skip this test. It demonstrates a now-fixed race in
# git-remote-testgit, but is too slow to leave in for general use.
: test_expect_success 'racily pushing to local repo' '
test_when_finished "rm -rf server2 localclone2" &&
cp -a server server2 &&
git clone "testgit::${PWD}/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
'

test_expect_success 'synch with changes from localclone' '
(cd clone &&
git pull)
Expand Down

0 comments on commit 1d9fd66

Please sign in to comment.