All of lore.kernel.org
 help / color / mirror / Atom feed
* master: t5800-remote-helpers.sh hangs on test "pulling from remote remote"
@ 2012-04-14  9:01 Stefano Lattarini
  2012-04-14 20:14 ` Clemens Buchacher
  0 siblings, 1 reply; 26+ messages in thread
From: Stefano Lattarini @ 2012-04-14  9:01 UTC (permalink / raw)
  To: git

The test 't5800-remote-helpers.sh' hangs on my Linux desktop (where I have
installed a custom simple-minded firewall based on iptables).  This does
not happen on remote systems I use for testing, so I guess the problem
lies with my machine.  Still, having the test to hang is unnecessarily
harsh and user-unfriendly IMHO, and it would be better to detect the
situation and SKIP or FAIL the affected test cases instead.

For reference, here is the output of the test 't5800-remote-helpers.sh' run
with the '-v' option:

-*-*-

Initialized empty Git repository in /devel/stefano/src/git/t/trash directory.t5800-remote-helpers/.git/
expecting success:
        git init --bare server/.git &&
        git clone server public &&
        (cd public &&
         echo content >file &&
         git add file &&
         git commit -m one &&
         git push origin master)

Initialized empty Git repository in /devel/stefano/src/git/t/trash directory.t5800-remote-helpers/server/.git/
Cloning into 'public'...
warning: You appear to have cloned an empty repository.
done.
[master (root-commit) 9a7aa46] one
 Author: A U Thor <author@example.com>
 1 file changed, 1 insertion(+)
 create mode 100644 file
Counting objects: 3, done.
Unpacking objects: 100% (3/3), done.
Writing objects: 100% (3/3), 219 bytes, done.
Total 3 (delta 0), reused 0 (delta 0)
To /devel/stefano/src/git/t/trash directory.t5800-remote-helpers/server
 * [new branch]      master -> master
ok 1 - setup repository

expecting success:
        git clone "testgit::${PWD}/server" localclone &&
        test_cmp public/file localclone/file

Cloning into 'localclone'...
ok 2 - cloning from local repo

expecting success:
        git clone "testgit::file://${PWD}/server" clone &&
        test_cmp public/file clone/file

Cloning into 'clone'...
ok 3 - cloning from remote repo

expecting success:
        (cd public &&
         echo content >>file &&
         git commit -a -m two &&
         git push)

[master 0eb255a] two
 Author: A U Thor <author@example.com>
 1 file changed, 1 insertion(+)
Counting objects: 5, done.
Unpacking objects: 100% (3/3), done.
Writing objects: 100% (3/3), 252 bytes, done.
Total 3 (delta 0), reused 0 (delta 0)
To /devel/stefano/src/git/t/trash directory.t5800-remote-helpers/server
   9a7aa46..0eb255a  master -> master
ok 4 - create new commit on remote

expecting success:
        (cd localclone && git pull) &&
        test_cmp public/file localclone/file

>From testgit::/devel/stefano/src/git/t/trash directory.t5800-remote-helpers/server
   9a7aa46..0eb255a  master     -> origin/master
Updating 9a7aa46..0eb255a
Fast-forward
 file |    1 +
 1 file changed, 1 insertion(+)
ok 5 - pulling from local repo

expecting success:
        (cd clone && git pull) &&
        test_cmp public/file clone/file

>From testgit::file:///devel/stefano/src/git/t/trash directory.t5800-remote-helpers/server
   9a7aa46..0eb255a  master     -> origin/master
Updating 9a7aa46..0eb255a
Fast-forward
 file |    1 +
 1 file changed, 1 insertion(+)
ok 6 - pulling from remote remote

expecting success:
        (cd localclone &&
        echo content >>file &&
        git commit -a -m three &&
        git push) &&
        compare_refs localclone HEAD server HEAD

[master 30d4cae] three
 Author: A U Thor <author@example.com>
 1 file changed, 1 insertion(+)

-*-*-

At this point, the test hangs, and I have to manually kill it with a SIGINT,
the result being:

-*-*-

Traceback (most recent call last):
  File "/devel/stefano/src/git/git-remote-testgit", line 265, in <module>
    sys.exit(main(sys.argv))
  File "/devel/stefano/src/git/git-remote-testgit", line 262, in main
    more = read_one_line(repo)
  File "/devel/stefano/src/git/git-remote-testgit", line 227, in read_one_line
    func(repo, cmdline)
  File "/devel/stefano/src/git/git-remote-testgit", line 175, in do_export
    changed = repo.importer.do_import(repo.gitdir)
  File "/home/stefano/src/git/t/../git_remote_helpers/build/lib/git_remote_helpers/git/importer.py", line 54, in do_import
    check_call(args)
  File "/home/stefano/src/git/t/../git_remote_helpers/build/lib/git_remote_helpers/util.py", line 169, in check_call
    retcode = call(*popenargs, **kwargs)
  File "/home/stefano/src/git/t/../git_remote_helpers/build/lib/git_remote_helpers/util.py", line 155, in call
    return subprocess.Popen(*popenargs, **kwargs).wait()
  File "/usr/lib/python2.7/subprocess.py", line 1291, in wait
    pid, sts = _eintr_retry_call(os.waitpid, self.pid, 0)
  File "/usr/lib/python2.7/subprocess.py", line 478, in _eintr_retry_call
    return func(*args)
KeyboardInterrupt
FATAL: Unexpected exit with code 0

-*-*-

If I run ps(1) in another terminal before interrupting the hung test, the
following command sticks out as a possible culprit:

git-fast-import --quiet --export-marks=/devel/stefano/src/git/t/trash \
directory.t5800-remote-helpers/localclone/.git/info/fast-import/\
c6c0871f9a7f12cd3f51aa290fbed7c49f539a8c/git.marks \
--import-marks=/devel/stefano/src/git/t/'trash directory.t5800-remote-helpers'/\
localclone/.git/info/fast-import/c6c0871f9a7f12cd3f51aa290fbed7c49f539a8c/\
git.marks

-*-*-

Other possibly relevant information:

  $ hg --version | head -1
  Mercurial Distributed SCM (version 1.8.3) $ python --version

  $ python --version
  Python 2.7.2+

  $ /bin/sh --version | head -1
  GNU bash, version 4.1.5(1)-release (i486-pc-linux-gnu)

  $ git describe
  v1.7.10-167-gf245c01

^ permalink raw reply	[flat|nested] 26+ messages in thread

end of thread, other threads:[~2012-04-23 11:35 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-04-14  9:01 master: t5800-remote-helpers.sh hangs on test "pulling from remote remote" Stefano Lattarini
2012-04-14 20:14 ` Clemens Buchacher
2012-04-15  0:00   ` Stefano Lattarini
2012-04-15  1:11     ` Clemens Buchacher
2012-04-15  8:08       ` Stefano Lattarini
2012-04-15 10:59         ` Clemens Buchacher
2012-04-15 11:18           ` Stefano Lattarini
2012-04-15 11:45             ` Clemens Buchacher
2012-04-15 11:58               ` Stefano Lattarini
2012-04-15 12:09                 ` Clemens Buchacher
2012-04-15 13:19                   ` Stefano Lattarini
2012-04-15 12:51                 ` Clemens Buchacher
2012-04-17  1:46                   ` Sverre Rabbelier
2012-04-19 23:34                   ` Pete Wyckoff
     [not found]                     ` <4F9145A1.6020201@gmail.com>
2012-04-21 20:15                       ` Pete Wyckoff
2012-04-21 23:35                         ` Clemens Buchacher
2012-04-22  2:17                           ` Pete Wyckoff
2012-04-21 23:45                         ` [PATCH] git-remote-testgit: fix race when spawning fast-import Pete Wyckoff
2012-04-21 23:42                           ` Clemens Buchacher
2012-04-22  2:16                             ` Pete Wyckoff
2012-04-22  9:49                               ` Clemens Buchacher
2012-04-22  4:50                           ` Junio C Hamano
2012-04-22 20:30                             ` [PATCHv2] " Pete Wyckoff
2012-04-23  2:40                               ` Junio C Hamano
2012-04-23 11:35                                 ` Pete Wyckoff
2012-04-15 11:12       ` master: t5800-remote-helpers.sh hangs on test "pulling from remote remote" Stefano Lattarini

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.