bzr 2.0.0 hang on merge & pull from location when trying to read directory as a file
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Bazaar |
Won't Fix
|
Low
|
Unassigned |
Bug Description
Worked with jam on this quite a while in #bzr and he asked me to report a bug about bzr trying to read a directory as a file.
When trying to merge or bzr pull $location, using sftp, bzr just hangs indefinitely.
"Server" is running OpenBSD 4.6. I tried using both the built-in openssh (OpenBSD has it integrated into the operating system) and also installing the latest OpenSSH (5.3). Neither had an effect.
-bash-4.0$ uname -a
OpenBSD anagram.
-bash-4.0$ ssh -v
OpenSSH_5.3, OpenSSL 0.9.8k 25 Mar 2009
-bash-4.0$ bzr --version
Bazaar (bzr) 2.0.2
Python interpreter: /usr/local/
Python standard library: /usr/local/
Platform: OpenBSD-
Client:
Mac OS X. Tried both 10.6.2 (on Intel) and 10.5.8 (on PowerPC).
Here's the Intel 10.6.2 machine:
xanadu:
Darwin xanadu.local 10.2.0 Darwin Kernel Version 10.2.0: Tue Nov 3 10:37:10 PST 2009; root:xnu-
bzr --version
Bazaar (bzr) 2.0.0
Python interpreter: /usr/bin/python2.6 2.6.1
Python standard library: /System/
Platform: Darwin-
bzrlib: /Library/
Bazaar configuration: /Users/
Bazaar log file: /Users/
xanadu:
OpenSSH_5.2p1, OpenSSL 0.9.8k 25 Mar 2009
Log from a failed merge attempt:
Tue 2009-11-17 17:41:07 -0600
0.046 bzr arguments: [u'merge', u'-Dsftp', u'sftp://
0.062 looking for plugins in /Users/
0.063 looking for plugins in /Library/
0.674 opening working tree '/Users/
1.975 ssh implementation is OpenSSH
85.344 Traceback (most recent call last):
File "/Library/
return the_callable(*args, **kwargs)
File "/Library/
ret = run(*run_argv)
File "/Library/
return self.run(
File "/Library/
possible_
File "/Library/
_do_directive)
File "/Library/
return _serializer.
File "/Library/
for line in f:
File "/Library/
line = self.readline()
File "/Library/
new_data = self._read(n)
File "/Library/
data = self._read_
File "/Library/
self.
File "/Library/
t, data = self._read_packet()
File "/Library/
x = self._read_all(4)
File "/Library/
x = self.sock.recv(n)
File "/Library/
return self.__
File "/Library/
return os.read(
File "/Library/
signal.
File "/Library/
signal.
File "/System/
return self.dispatch_
File "/System/
if self.quitting: raise BdbQuit
BdbQuit
Log from a failed pull $location attempt:
Tue 2009-11-17 19:13:30 -0600
0.053 bzr arguments: [u'pull', u'-Dsftp', u'sftp://
0.069 looking for plugins in /Users/
0.070 looking for plugins in /Library/
0.359 encoding stdout as sys.stdout encoding 'UTF-8'
0.682 opening working tree '/Users/
2.751 ssh implementation is OpenSSH
51.858 Traceback (most recent call last):
File "/Library/
return the_callable(*args, **kwargs)
File "/Library/
ret = run(*run_argv)
File "/Library/
return self.run(
File "/Library/
possible_
File "/Library/
_do_directive)
File "/Library/
return _serializer.
File "/Library/
for line in f:
File "/Library/
line = self.readline()
File "/Library/
new_data = self._read(n)
File "/Library/
data = self._read_
File "/Library/
self.
File "/Library/
t, data = self._read_packet()
File "/Library/
x = self._read_all(4)
File "/Library/
x = self.sock.recv(n)
File "/Library/
return self.__
File "/Library/
return os.read(
File "/Library/
signal.
File "/Library/
signal.
File "/System/
return self.dispatch_
File "/System/
if self.quitting: raise BdbQuit
BdbQuit
Related branches
- John A Meinel: Approve
-
Diff: 132 lines (+27/-34) (has conflicts)4 files modifiedNEWS (+10/-0)
bzrlib/bundle/__init__.py (+17/-5)
bzrlib/tests/test_http.py (+0/-8)
bzrlib/tests/test_read_bundle.py (+0/-21)
Changed in bzr: | |
assignee: | nobody → Martin Pool (mbp) |
Thanks for the report. What happens if you try to cat a directory using an sftp client?