[BUG] Can't branch from remote to local machine over bzr:// protocol
Alexander Belchenko
bialix at ukr.net
Fri Dec 14 14:31:40 GMT 2007
Again bug with my big and hairy repo (and Trac).
But this time I have really big problem with smart server itself.
I can't get one branch over bzr:// protocol.
It strange, because another branch from the same repo works OK.
So I think problem in the branch itself.
This branch contains only one file inside -- it's binary setup file for
my project. The size of file varies from 2MB to 3MB. If I branch via
file:// or http:// protocol -- all fine, and resulting repo contains
17MB pack file (full repository with indices is about 19MB).
But when I try to branch over bzr:// I have error.
On the client machine I get traceback in the .bzr.log:
bzr arguments: [u'--no-plugins', u'branch', u'bzr://192.168.1.10/xxx']
encoding stdout as sys.stdout encoding 'cp866'
created control directory in file:///C:/Temp/2/xxx/
creating repository in file:///C:/Temp/2/xxx/.bzr/.
Using fetch logic to copy between
RemoteRepository(bzr://192.168.1.10/.bzr/)(remote) and
KnitPackRepository(u'file:///C:/Temp/2/xxx/.bzr/repository/')(<RepositoryFormatKnitPack1>)
fetch up to rev {bialix at ukr.net-20071129151511-crm8eckjcb3sba0u}
Traceback (most recent call last):
File "bzrlib\commands.pyc", line 802, in run_bzr_catch_errors
File "bzrlib\commands.pyc", line 758, in run_bzr
File "bzrlib\commands.pyc", line 492, in run_argv_aliases
File "bzrlib\builtins.pyc", line 905, in run
File "bzrlib\bzrdir.pyc", line 833, in sprout
File "bzrlib\remote.pyc", line 601, in sprout
File "bzrlib\repository.pyc", line 873, in fetch
File "bzrlib\decorators.pyc", line 165, in write_locked
File "bzrlib\repository.pyc", line 2763, in fetch
File "bzrlib\fetch.pyc", line 103, in __init__
File "bzrlib\fetch.pyc", line 132, in __fetch
File "bzrlib\fetch.pyc", line 408, in _fetch_everything_for_revisions
File "bzrlib\repository.pyc", line 778, in insert_data_stream
File "bzrlib\remote.pyc", line 863, in _deserialise_stream
File "bzrlib\smart\protocol.pyc", line 548, in read_body_bytes
File "bzrlib\smart\medium.pyc", line 335, in read_bytes
File "bzrlib\smart\medium.pyc", line 611, in _read_bytes
File "bzrlib\smart\medium.pyc", line 564, in _read_bytes
error: (10054, 'Connection reset by peer')
return code 4
On the server I get this traceback in the console:
<bzrlib.smart.medium.SmartServerSocketStreamMedium object at 0x012DD990>
terminating on exception response already sent
Exception in thread smart-server-child:
Traceback (most recent call last):
File "E:\Python24\lib\threading.py", line 442, in __bootstrap
self.run()
File "E:\Python24\lib\threading.py", line 422, in run
self.__target(*self.__args, **self.__kwargs)
File "E:\Python24\Lib\site-packages\bzrlib\smart\medium.py", line 72,
in serve
server_protocol = self._build_protocol()
File "E:\Python24\Lib\site-packages\bzrlib\smart\medium.py", line 95,
in _build_protocol
protocol.accept_bytes(bytes)
File "E:\Python24\Lib\site-packages\bzrlib\smart\protocol.py", line
115, in accept_bytes
self._send_response(request.FailedSmartServerResponse(
File "E:\Python24\Lib\site-packages\bzrlib\smart\protocol.py", line
146, in _send_response
assert not self._finished, 'response already sent'
AssertionError: response already sent
And in the .bzr.log:
Traceback (most recent call last):
File "E:\Python24\Lib\site-packages\bzrlib\smart\protocol.py", line
109, in accept_bytes
self._send_response(self.request.response)
File "E:\Python24\Lib\site-packages\bzrlib\smart\protocol.py", line
156, in _send_response
self._write_func(bytes)
File "E:\Python24\Lib\site-packages\bzrlib\smart\medium.py", line
180, in _write_out
self.socket.sendall(bytes)
File "<string>", line 1, in sendall
error: (10053, 'Software caused connection abort')
BTW, it's noot good that bzr server emits tracebacks only to console,
but not to .bzr.log, IMO.
The same problem if I try to branch from Linux machine.
Server is Windows 2000 + Python 2.4 + bzr 1.0 final python-based.
Is it a known problem?
More information about the bazaar
mailing list