git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: master: t5800-remote-helpers.sh hangs on test "pulling from remote remote"

From
Clemens Buchacher <drizzd@aon.at>
Date
Apr 15, 2012, 12:51 UTC
Message-ID
<20120415125140.GA15933@ecki>
In-Reply-To
<4F8AB7F1.1020705@gmail.com>
Hi Sverre,

The 'pushing to local repo' test of t5800 which pushes using git-remote-testgit.py results in a deadlock for Stefano. Invoking fast-export/fast-import manually seems to work, however. I don't know what else to try at this point.

I am pasting some relevant results below.
Show 18 quoted lines
> expecting success:
>         (cd localclone &&
>         echo content >>file &&
>         git commit -a -m three &&
>         GIT_TRACE=1 GIT_TRANSPORT_HELPER_DEBUG=1 GIT_DEBUG_TESTGIT=1 git push) &&
>         compare_refs localclone HEAD server HEAD
> 
> [...]
> Debug: Remote helper: -> export
> trace: run_command: 'fast-export' '--use-done-feature' '--export-marks=.git/info/fast-import/c6c0871f9a7f12cd3f51aa290fbed
> 7c49f539a8c/testgit.marks' '--import-marks=.git/info/fast-import/c6c0871f9a7f12cd3f51aa290fbed7c49f539a8c/testgit.marks' '^refs/testgit/origin/master' 'refs/heads/master'
> trace: exec: 'git' 'fast-export' '--use-done-feature' '--export-marks=.git/info/fast-import/c6c0871f9a7f12cd3f51aa290fbed7c49f539a8c/testgit.marks' '--import-marks=.git/info/fast-import/c6c0871f9a7f12cd3f51aa290fbed7c49f539a8c/testgit.marks' '^refs/testgit/origin/master' 'refs/heads/master'
> trace: built-in: git 'fast-export' '--use-done-feature' '--export-marks=.git/info/fast-import/c6c0871f9a7f12cd3f51aa290fbed7c49f539a8c/testgit.marks' '--import-marks=.git/info/fast-import/c6c0871f9a7f12cd3f51aa290fbed7c49f539a8c/testgit.marks' '^refs/testgit/origin/master' 'refs/heads/master'
> Got command 'export' with args ''
> trace: built-in: git 'for-each-ref' 'refs/heads'
> Debug: Remote helper: Waiting...
> trace: exec: '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'
> trace: run_command: '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'

This is Stefano's output, at which point git fast-import hangs. On my box, fast-export runs a little later (after Got command 'export' with args ''), but I don't see how that would matter.

Below is the result from running fast-import/fast-export manually:
On Sun, Apr 15, 2012 at 01:58:41PM +0200, Stefano Lattarini wrote:
Show 69 quoted lines
> On 04/15/2012 01:45 PM, Clemens Buchacher wrote:
> > Hi Stefano,
> > 
> > Almost there. :-)
> > 
> > On Sun, Apr 15, 2012 at 01:18:20PM +0200, Stefano Lattarini wrote:
> >>
> >> $ git 'fast-export' '--use-done-feature' \
> >>       '--export-marks=.git/info/fast-import/c6c0871f9a7f12cd3f51aa290fbed7c49f539a8c/testgit.marks' \
> >>       '--import-marks=.git/info/fast-import/c6c0871f9a7f12cd3f51aa290fbed7c49f539a8c/testgit.marks' \
> >>       '^refs/testgit/origin/master' 'refs/heads/master' \
> >>    | git 'fast-import' \
> >>          '--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'
> > 
> > To simulate a git push, you have to run fast-export from localclone and
> > fast-import from the server directory. I.e. starting out in
> > t/trash directory.t5800-remote-helpers:
> > 
> > $ (cd localclone; git fast-export --use-done-feature \
> >       --export-marks='.git/info/fast-import/c6c0871f9a7f12cd3f51aa290fbed7c49f539a8c/testgit.marks' \
> >       --import-marks='.git/info/fast-import/c6c0871f9a7f12cd3f51aa290fbed7c49f539a8c/testgit.marks' \
> >       ^refs/testgit/origin/master refs/heads/master) |
> >   (cd server; git fast-import \
> >          --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')
> >
> OK, I cut & pasted your command; it ran successfully, with this output:
> 
> git-fast-import statistics:
> ---------------------------------------------------------------------
> Alloc'd objects:       5000
> Total objects:            3 (         0 duplicates                  )
>       blobs  :            1 (         0 duplicates          0 deltas of          1 attempts)
>       trees  :            1 (         0 duplicates          0 deltas of          1 attempts)
>       commits:            1 (         0 duplicates          0 deltas of          0 attempts)
>       tags   :            0 (         0 duplicates          0 deltas of          0 attempts)
> Total branches:           1 (         1 loads     )
>       marks:           1024 (         6 unique    )
>       atoms:              1
> Memory total:          2294 KiB
>        pools:          2098 KiB
>      objects:           195 KiB
> ---------------------------------------------------------------------
> pack_report: getpagesize()            =       4096
> pack_report: core.packedGitWindowSize =   33554432
> pack_report: core.packedGitLimit      =  268435456
> pack_report: pack_used_ctr            =          2
> pack_report: pack_mmap_calls          =          1
> pack_report: pack_open_windows        =          1 /          1
> pack_report: pack_mapped              =        253 /        253
> ---------------------------------------------------------------------
> 
> Thanks,
>   Stefano
> 
> 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
Clemens
Previous: Stefano LattariniNext: Sverre Rabbelier
Message 12 of 26 in “master: t5800-remote-helpers.sh hangs on test "pulling from remote remote"”
  1. Stefano LattariniApr 14, 2012
  2. Clemens BuchacherApr 14, 2012
  3. Stefano LattariniApr 15, 2012
  4. Clemens BuchacherApr 15, 2012
  5. Stefano LattariniApr 15, 2012
  6. Clemens BuchacherApr 15, 2012
  7. Stefano LattariniApr 15, 2012
  8. Clemens BuchacherApr 15, 2012
  9. Stefano LattariniApr 15, 2012
  10. Clemens BuchacherApr 15, 2012
  11. Stefano LattariniApr 15, 2012
  12. Clemens BuchacherApr 15, 2012
  13. Sverre RabbelierApr 17, 2012
  14. Pete WyckoffApr 19, 2012
  15. Stefano LattariniApr 15, 2012
  16. Pete WyckoffApr 21, 2012
  17. Clemens BuchacherApr 21, 2012
  18. Pete WyckoffApr 22, 2012
  19. git-remote-testgit: fix race when spawning fast-importPete Wyckoff, Apr 21, 2012
  20. Clemens BuchacherApr 21, 2012
  21. Pete WyckoffApr 22, 2012
  22. Clemens BuchacherApr 22, 2012
  23. Junio C HamanoApr 22, 2012
  24. [PATCHv2] git-remote-testgit: fix race when spawning fast-importPete Wyckoff, Apr 22, 2012
  25. Junio C HamanoApr 23, 2012
  26. Pete WyckoffApr 23, 2012

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.