[Bug 6936] New: remotefilelog clone/update sometimes hangs

mercurial-bugs at mercurial-scm.org mercurial-bugs at mercurial-scm.org
Fri Nov 1 22:50:58 UTC 2024


https://bz.mercurial-scm.org/show_bug.cgi?id=6936

            Bug ID: 6936
           Summary: remotefilelog clone/update sometimes hangs
           Product: Mercurial
           Version: 6.8.1
          Hardware: PC
                OS: NetBSD
            Status: UNCONFIRMED
          Severity: feature
          Priority: wish
         Component: Mercurial
          Assignee: bugzilla at mercurial-scm.org
          Reporter: mercurial-bugzilla at campbell.mumble.net
                CC: mercurial-devel at mercurial-scm.org
    Python Version: ---

Following

https://foss.heptapod.net/mercurial/mercurial-devel/-/tree/branch/default/hgext/remotefilelog

I ran:

server$ hg --version
Mercurial Distributed SCM (version 6.8.1)
(see https://mercurial-scm.org for more information)

Copyright (C) 2005-2024 Olivia Mackall and others
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
server$ hg clone -U https://anonhg.NetBSD.org/xsrc
destination directory: xsrc
applying clone bundle from
https://cdn.NetBSD.org/_bundles/xsrc-public/0fc97a967a8522228b1655b1bd21c0b34e7a69d9.zstd-22.hg
adding changesets
adding manifests
adding file changes
added 6934 changesets with 189910 changes to 80999 files (+47 heads)
finished applying clone bundle
searching for changes
adding changesets
adding manifests
adding file changes
adding changesets
adding manifests
adding file changes
added 873 changesets with 19364 changes to 34537 files (+2 heads)
new changesets 689bdf40f826:17b223b2619d (1 drafts)
6337 local changesets published
      510.25 real       215.13 user        63.74 sys
manticore$ cat >>xsrc/.hg/hgrc
[extensions]
remotefilelog =
[remotefilelog]
server = True
serverexpiration = 14

client$ hg --version
Mercurial Distributed SCM (version 6.8.1)
(see https://mercurial-scm.org for more information)

Copyright (C) 2005-2024 Olivia Mackall and others
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
client$ hg clone --shallow hg ssh://server/xsrc
client$ hg --config extensions.remotefilelog= --config
remotefilelog.cachepath=$HOME/.hgcache --config remotefilelog.cachelimit='2 GB'
clone --shallow ssh://server/xsrc)
destination directory: xsrc
requesting all changes
adding changesets
adding manifests
adding file changes
added 7807 changesets with 0 changes to 0 files (+49 heads)
new changesets b52b9fb50d7f:17b223b2619d
updating to branch xorg
downloading [                                                     ]     0/43572

At this point, top(1) on the server and client both report no CPU usage, and
iftop(8) reports no network traffic between them.  I waited several minutes
(and, before updating both sides to 6.8.1, several hours) with no progress.

I tried hitting ^C on the client and running update to see if it would go
anywhere:

client$ [ hg --config extensions.remotefilelog= --config
remotefilelog.cachepath=$HOME/.hgcache --config remotefilelog.cachelimit='2 GB'
update

This hung without printing anything.

I tried hitting ^C on the client and running update -vvv --debug to see if it
would explain itself:

client$ hg --config extensions.remotefilelog= --config
remotefilelog.cachepath=$HOME/.hgcache --config remotefilelog.cachelimit='2 GB'
update -vvv --debug
resolving manifests
 branchmerge: False, force: False, partial: False
 ancestor: 000000000000, local: 000000000000+, remote: 17b223b2619d
running ssh server 'hg -R xsrc serve --stdio'
sending hello command
sending between command
remote: 539
remote: capabilities: batch branchmap
bundle2=HG20%0Abookmarks%0Achangegroup%3D01%2C02%2C03%0Acheckheads%3Drelated%0Adigests%3Dmd5%2Csha1%2Csha512%0Aerror%3Dabort%2Cunsupportedcontent%2Cpushraced%2Cpushkey%0Ahgtagsfnodes%0Alistkeys%0Aphases%3Dheads%0Apushkey%0Aremote-changegroup%3Dhttp%2Chttps%0Astream%3Dv2
changegroupsubset exp-remotefilelog-ssh-getfiles-1 getbundle known lookup
protocaps pushkey
streamreqs=generaldelta,revlog-compression-zstd,revlogv1,sparserevlog
unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash x_rfl_getfile x_rfl_getflogheads
remote: 1
sending protocaps command
sending x_rfl_getfiles command

Am I holding remotefilelog wrong?  What other diagnostics should I get to find
where it's hanging?

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the Mercurial-devel mailing list