smart server emits traceback while get log via bzr protocol

Bug #175572 reported by Alexander Belchenko
2
Affects Status Importance Assigned to Milestone
Bazaar
Fix Released
Medium
Andrew Bennetts

Bug Description

I run smart server on the win32 machine, in the root of pack shared repo with following command:

bzr serve

Many commands works as expected, and even log command works, but each time command stops printing revisions I have traceback in the server console. But server itself still working and continue to respond on subsequent requests.

<bzrlib.smart.medium.SmartServerSocketStreamMedium object at 0x012DDF90> terminating on exception (10054, 'Connection reset by peer')
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 88, in _buil
d_protocol
    bytes = self._get_line()
  File "E:\Python24\Lib\site-packages\bzrlib\smart\medium.py", line 132, in _get
_line
    new_char = self._get_bytes(1)
  File "E:\Python24\Lib\site-packages\bzrlib\smart\medium.py", line 170, in _get
_bytes
    return self.socket.recv(4096)
error: (10054, 'Connection reset by peer')

Tags: hpss
description: updated
Revision history for this message
John A Meinel (jameinel) wrote :

It seems we are just not catching and suppressing the client disconnecting. We already trap for
                    except self._socket_timeout:
                        # just check if we're asked to stop
                        pass
                    except self._socket_error, e:
                        # if the socket is closed by stop_background_thread
                        # we might get a EBADF here, any other socket errors
                        # should get logged.
                        if e.args[0] != errno.EBADF:
                            trace.warning("listening socket error: %s", e)

I suppose it is also possible that it is the SmartServerSocketStreamMedium which needs the exception trapping.

Changed in bzr:
importance: Undecided → Medium
status: New → Triaged
Revision history for this message
Alexander Belchenko (bialix) wrote :

I got traceback from smart server on many other commands like: pull, commit, branch etc.

Revision history for this message
Matthew Fuller (fullermd) wrote :

Is this really still open?

Revision history for this message
Alexander Belchenko (bialix) wrote : Re: [Bug 175572] Re: smart server emits traceback while get log via bzr protocol

fullermd пишет:
> Is this really still open?

bzr serve@win32 in 1.5 and 1.9rc1 still produce traceback.

What "really" means for you?

Revision history for this message
Matthew Fuller (fullermd) wrote :

> What "really" means for you?

Hm, I guess that came across more incredulous-sounding than I meant it.

Just noticed that this is 11 months old with no comments, and it doesn't seem to happen here or ever that I've seen, and was checking if it had been fixed and forgotten.

Revision history for this message
Alexander Belchenko (bialix) wrote :

2 Andrew Bennetts:

Does bzr.dev revno.4419 fixes this problem?

Revision history for this message
Andrew Bennetts (spiv) wrote :

Alexander: yes, I believe it does. Thanks for pointing that out!

So, I'm closing this bug, but I don't actually have Windows locally so please reopen it if I'm wrong.

Changed in bzr:
assignee: nobody → Andrew Bennetts (spiv)
milestone: none → 1.16
status: Triaged → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.