[PATCH 2 of 4] httppeer: move url opening in its own method

Boris Feld boris.feld at octobus.net
Tue Jan 16 13:16:29 EST 2018


# HG changeset patch
# User Boris Feld <boris.feld at octobus.net>
# Date 1515752060 0
#      Fri Jan 12 10:14:20 2018 +0000
# Node ID 6d0599c2fe114d927f2d37fd5a22e061843c6974
# Parent  219d94744f12bec5dafca7d16c0d473bfe35e732
# EXP-Topic exchangedebug
# Available At https://bitbucket.org/octobus/mercurial-devel/
#              hg pull https://bitbucket.org/octobus/mercurial-devel/ -r 6d0599c2fe11
httppeer: move url opening in its own method

This will help adding debugging logic to request opening when investigating
Mercurial performance.

diff --git a/mercurial/httppeer.py b/mercurial/httppeer.py
--- a/mercurial/httppeer.py
+++ b/mercurial/httppeer.py
@@ -161,6 +161,9 @@ class httppeer(wireproto.wirepeer):
                 h.close()
                 getattr(h, "close_all", lambda: None)()
 
+    def _openurl(self, req):
+        return self._urlopener.open(req)
+
     # Begin of _basepeer interface.
 
     @util.propertycache
@@ -298,7 +301,7 @@ class httppeer(wireproto.wirepeer):
             self.ui.debug("sending %s bytes\n" % size)
             req.add_unredirected_header('Content-Length', '%d' % size)
         try:
-            resp = self._urlopener.open(req)
+            resp = self._openurl(req)
         except urlerr.httperror as inst:
             if inst.code == 401:
                 raise error.Abort(_('authorization failed'))


More information about the Mercurial-devel mailing list