Unison 2.9.20 and OpenSSH-4.1p1-2: hangs as server.

Brooks Moses bmoses@stanford.edu
Thu Sep 15 07:55:00 GMT 2005


Hello!

I've been having some problems with Unison 2.9 hanging when trying to 
connect to a Cygwin machine running the OpenSSH sshd server.  I found a 
few messages about unison and ssh hanging in the archives, but the 
circumstances seem a bit different from mine.

My setup involves the following three computers:

* Laptop:  Windows 2000, Cygwin.
* Desktop: Windows 2003 Server, Cygwin.
* Remote:  FreeBSD.

All three of the computers are running Unison version 2.9.  The two 
Cygwin machines are both running the Cygwin Unison-2.9.20 version, which 
is the latest Unison-2.9.  They're also both running the latest Cygwin 
OpenSSH package, which I believe is OpenSSH-4.1p1.2.  The Desktop is 
running the sshd from that package, and I've confirmed that I can 
connect to it remotely and manipulate files in the directories in question.

In the remaining discussion, when I say "Syncing from X to Y", what I 
mean is running the command "unison dir ssh://<address-of-Y>/dir" on a 
terminal on computer X, where "dir" is my test directory.

First, here are the things that work:

* Syncing from the Laptop to the Remote works.
* Syncing from the Desktop to the Remote works.
* Syncing from the Laptop to the Desktop works for a 16-byte file.
* Syncing from the Remote to the Desktop works for a 16-byte file.

However, trying to sync from either the Laptop or the Remote to the 
Desktop with a large new file (a .pdf of about 400kb) fails.  It works 
fine through checking for differences and comparing the local and remote 
versions, up to the point where it begins to actually transfer the 
differing files.  Then, after just a few bytes of network traffic (far 
less than the full 400kb), it hangs.  Runs of "ps -ef" confirm that the 
unison-2.9.20 processes are still running on both machines, but there is 
no network traffic, and no CPU usage.

Attempts to run Unison on directories with lots of changed files, such 
that Unison has multiple connections running, crash at the same point 
with uncaught exceptions or "broken pipe" errors instead of hanging.  (I 
can reproduce those if they'd be useful, but they seemed just random and 
cryptic, and they weren't consistent if I changed the files, so I didn't 
save them.)

Note that this seems to be a server-side problem, not a client-side 
problem -- cases where the Cygwin boxes are clients and the FreeBSD box 
is a server work fine, but cases where the Cygwin machine is a server 
fail, whether the client is a Cygwin box or a FreeBSD box.

I am not at all sure whether this problem is a difficulty with SSHD or 
with Unison, or with some strange interaction between them, though....

Any advice?  Things I should try to fix this?  Things that I should do 
to help in debugging the problem?

Thanks much!
- Brooks


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/



More information about the Cygwin mailing list