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/