URLError: <urlopen error [Errno 32] Broken pipe> when attempting to push a revision in a big repository
Created originally on Bitbucket by Swyter (Swyter ™)
So, I was very happy of being able to use the excellent TortoiseHg-Nautilus integration as a Git front-end, which has worked fine for years. So, long story short, pull is uninformative but goes okay, I do the local commit and attempted to push it to GitHub with hg-git.
This happens:
#!python
[swyter@osgiliath tldmod-hg]$ hg push --traceback -v --debug
pushing to git+https://github.com/tldmod/tldmod.git
using auth.github.com.* for authentication
http authorization required for https://github.com/tldmod/tldmod.git/info/refs
realm: GitHub
user: swyter
password:
http auth: user swyter, password hunter2
searching for changes
1 commits found
list of commits:
e6124c7249aff0496f4db9d65ab85d3c4fc35ee8
adding objects
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/mercurial/dispatch.py", line 191, in _runcatch
return _dispatch(req)
File "/usr/lib/python2.7/site-packages/mercurial/dispatch.py", line 924, in _dispatch
cmdpats, cmdoptions)
File "/usr/lib/python2.7/site-packages/mercurial/dispatch.py", line 681, in runcommand
ret = _runcommand(ui, options, cmd, d)
File "/usr/lib/python2.7/site-packages/mercurial/dispatch.py", line 1055, in _runcommand
return checkargs()
File "/usr/lib/python2.7/site-packages/mercurial/dispatch.py", line 1015, in checkargs
return cmdfunc()
File "/usr/lib/python2.7/site-packages/mercurial/dispatch.py", line 921, in <lambda>
d = lambda: util.checksignature(func)(ui, *args, **cmdoptions)
File "/usr/lib/python2.7/site-packages/mercurial/util.py", line 991, in check
return func(*args, **kwargs)
File "/usr/lib/python2.7/site-packages/mercurial/commands.py", line 5739, in push
opargs=opts.get('opargs'))
File "/usr/lib/python2.7/site-packages/mercurial/extensions.py", line 195, in closure
return func(*(args + a), **kw)
File "/usr/lib/python2.7/site-packages/hggit/util.py", line 52, in inner
return f(*args, **kwargs)
File "/usr/lib/python2.7/site-packages/hggit/__init__.py", line 361, in exchangepush
pushop.cgresult = repo.githandler.push(remote.path, revs, force)
File "/usr/lib/python2.7/site-packages/hggit/git_handler.py", line 343, in push
old_refs, new_refs = self.upload_pack(remote, revs, force)
File "/usr/lib/python2.7/site-packages/hggit/git_handler.py", line 1025, in upload_pack
progress=callback)
File "/usr/lib/python2.7/site-packages/dulwich/client.py", line 1017, in send_pack
data=req_data.getvalue())
File "/usr/lib/python2.7/site-packages/dulwich/client.py", line 975, in _smart_request
resp = self._http_request(url, headers, data)
File "/usr/lib/python2.7/site-packages/dulwich/client.py", line 940, in _http_request
resp = self.opener.open(req)
File "/usr/lib/python2.7/urllib2.py", line 431, in open
response = self._open(req, data)
File "/usr/lib/python2.7/urllib2.py", line 449, in _open
'_open', req)
File "/usr/lib/python2.7/urllib2.py", line 409, in _call_chain
result = func(*args)
File "/usr/lib/python2.7/urllib2.py", line 1240, in https_open
context=self._context)
File "/usr/lib/python2.7/urllib2.py", line 1197, in do_open
raise URLError(err)
URLError: <urlopen error [Errno 32] Broken pipe>
abort: error: Broken pipe
[swyter@osgiliath tldmod-hg]$
The only thing I can think of is the massive size of the repository, that might conflict with the hg -> git overhead. Everything else is pretty normal. Used the bleeding edge revision 4006f2a59058.
What do you think? Do you need further information? Any additional switches I can try?