Using Darcs 2.10.1, I have a modest repository (~30 patches, 5 small
files). I'm working on my machine and pulling from hub.darcs.net (via ssh).
What happens is I can see the metadata of the first patch but prompt
takes ages to appear. Same happens with "pull --no-cache", and after
"darcs optimize clean".
The source of the issue is that in `_darcs/prefs/repo`, I have a second
source which is a ssh URL via patch-tag (which no longer exists).
Running again with --debug, I have:
~~~
$ darcs pull --no-cache --debug
Beginning identifying repository .
[...] # lots of OK ssh stuff to hub.darcs.net
They have the following patches to pull:
[...] # lists 3 remote patches I don't have locally
I'm doing copyFileUsingCache on patches/00000xxxxxxxxxxx..."
Will effectively do copyFileUsingCache to: "/home/xxxxx.."
Copying from "gh@patch-tag.com:..."
copySSH file: gh@patch-tag.com:.../_darcs/patches/....
Disabling progress reports...
ssh gh@patch-tag.com darcs transfer-mode --repodir /r/gh/purememo/
Failed to start ssh connection:
fd:13: hGetLine: end of file
Severing ssh failed connection to gh@patch-tag.com
NOTE: the server may be running a version of darcs prior to 2.0.0.
Installing darcs 2 on the server will speed up ssh-based commands.
~~~
And it waits.
So there are two problems:
#1) it does not detect ssh connection failure right away, and instead waits
#2) let's assume the 2nd ssh connexion works; there should be a
heuristic that says that to grab patches, you should reuse the
*existing* ssh connexion. On the UI level I find it weird that darcs is
able to know which patches are missing, but is unable to grab them...
This ticket is for #1.
|