diff --git a/mercurial/wireprotov2peer.py b/mercurial/wireprotov2peer.py --- a/mercurial/wireprotov2peer.py +++ b/mercurial/wireprotov2peer.py @@ -136,6 +136,9 @@ class clienthandler(object): response = self._responses[frame.requestid] if action == 'responsedata': + # This buffers all data until end of stream is received. This + # is bad for performance. + # TODO make response data streamable response.b.write(meta['data']) if meta['eos']: