[Bug 5889] New: Random IOError with hgweb since 4.6 upgrade

mercurial-bugs at mercurial-scm.org mercurial-bugs at mercurial-scm.org
Fri May 18 09:34:55 UTC 2018


https://bz.mercurial-scm.org/show_bug.cgi?id=5889

            Bug ID: 5889
           Summary: Random IOError with hgweb since 4.6 upgrade
           Product: Mercurial
           Version: 4.6
          Hardware: PC
                OS: Linux
            Status: UNCONFIRMED
          Severity: bug
          Priority: wish
         Component: hgweb
          Assignee: bugzilla at mercurial-scm.org
          Reporter: philippe.pepiot at logilab.fr
                CC: mercurial-devel at mercurial-scm.org

Hello,

We have random (= not always) IOError on our hgweb instance since the upgrade
from 4.5.3 to 4.6.

[Fri May 18 11:18:21.684502 2018] [wsgi:error] [pid 27213:tid 139898761737984]
[client 1.2.3.4:12830] IOError: failed to write data

This might related to this wsgi warning:

[Fri May 18 11:27:33.617198 2018] [wsgi:warn] [pid 31209:tid 139824486274816]
mod_wsgi (pid=31209): Callback registration for signal 15 ignored.
[Fri May 18 11:27:33.617412 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
File "/usr/lib/python2.7/dist-packages/mercurial/hgweb/hgwebdir_mod.py", line
351, in run_wsgi
[Fri May 18 11:27:33.617450 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
  for r in self._runwsgi(req, res):
[Fri May 18 11:27:33.617483 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
File "/usr/lib/python2.7/dist-packages/mercurial/hgweb/hgweb_mod.py", line 302,
in run_wsgi
[Fri May 18 11:27:33.617514 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
  for r in self._runwsgi(req, res, repo):
[Fri May 18 11:27:33.617542 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
File "/usr/lib/python2.7/dist-packages/mercurial/hgweb/hgweb_mod.py", line 422,
in _runwsgi
[Fri May 18 11:27:33.617571 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
  return getattr(webcommands, cmd)(rctx)
[Fri May 18 11:27:33.617611 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
File "/usr/lib/python2.7/dist-packages/mercurial/hgweb/webcommands.py", line
195, in file
[Fri May 18 11:27:33.617643 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
  return manifest(web)
[Fri May 18 11:27:33.617675 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
File "/usr/lib/python2.7/dist-packages/mercurial/hgweb/webcommands.py", line
524, in manifest
[Fri May 18 11:27:33.617707 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
  ctx = webutil.changectx(web.repo, web.req)
[Fri May 18 11:27:33.617739 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
File "/usr/lib/python2.7/dist-packages/mercurial/hgweb/webutil.py", line 334,
in changectx
[Fri May 18 11:27:33.617770 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
  return scmutil.revsymbol(repo, changeid)
[Fri May 18 11:27:33.617803 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
File "/usr/lib/python2.7/dist-packages/mercurial/scmutil.py", line 507, in
revsymbol
[Fri May 18 11:27:33.617835 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
  node = repo.names.singlenode(repo, symbol)
[Fri May 18 11:27:33.617861 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
File "/usr/lib/python2.7/dist-packages/mercurial/namespaces.py", line 105, in
singlenode
[Fri May 18 11:27:33.617890 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
  n = v.namemap(repo, name)
[Fri May 18 11:27:33.617916 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
File "/usr/lib/python2.7/dist-packages/mercurial/namespaces.py", line 44, in
<lambda>
[Fri May 18 11:27:33.617946 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
  tagnamemap = lambda repo, name: tolist(repo._tagscache.tags.get(name))
[Fri May 18 11:27:33.617972 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
File "/usr/lib/python2.7/dist-packages/mercurial/util.py", line 1437, in
__get__
[Fri May 18 11:27:33.618008 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
  result = self.func(obj)
[Fri May 18 11:27:33.618036 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
File "/usr/lib/python2.7/dist-packages/mercurial/localrepo.py", line 943, in
_tagscache
[Fri May 18 11:27:33.618066 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
  cache.tags, cache.tagtypes = self._findtags()
[Fri May 18 11:27:33.618091 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
File "/usr/lib/python2.7/dist-packages/mercurial/localrepo.py", line 979, in
_findtags
[Fri May 18 11:27:33.618121 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
  alltags = tagsmod.findglobaltags(self.ui, self)
[Fri May 18 11:27:33.618147 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
File "/usr/lib/python2.7/dist-packages/mercurial/tags.py", line 180, in
findglobaltags
[Fri May 18 11:27:33.618176 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
  (heads, tagfnode, valid, cachetags, shouldwrite) = _readtagcache(ui, repo)
[Fri May 18 11:27:33.618202 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
File "/usr/lib/python2.7/dist-packages/mercurial/tags.py", line 460, in
_readtagcache
[Fri May 18 11:27:33.618231 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
  cachefnode = _getfnodes(ui, repo, repoheads)
[Fri May 18 11:27:33.618257 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
File "/usr/lib/python2.7/dist-packages/mercurial/tags.py", line 480, in
_getfnodes
[Fri May 18 11:27:33.618286 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
  fnodescache.write()
[Fri May 18 11:27:33.618312 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
File "/usr/lib/python2.7/dist-packages/mercurial/tags.py", line 763, in write
[Fri May 18 11:27:33.618340 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
  lock = repo.wlock(wait=False)
[Fri May 18 11:27:33.618367 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
File "/usr/lib/python2.7/dist-packages/mercurial/localrepo.py", line 1771, in
wlock
[Fri May 18 11:27:33.618396 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
  parentenvvar='HG_WLOCK_LOCKER')
[Fri May 18 11:27:33.618422 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
File "/usr/lib/python2.7/dist-packages/mercurial/localrepo.py", line 1701, in
_lock
[Fri May 18 11:27:33.618459 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
  parentlock=parentlock)
[Fri May 18 11:27:33.618491 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
File "/usr/lib/python2.7/dist-packages/mercurial/lock.py", line 135, in trylock
[Fri May 18 11:27:33.618522 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
  l._trylock()
[Fri May 18 11:27:33.618548 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
File "/usr/lib/python2.7/dist-packages/mercurial/lock.py", line 249, in
_trylock
[Fri May 18 11:27:33.618577 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
  self.held = 1
[Fri May 18 11:27:33.618603 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
File "/usr/lib/python2.7/contextlib.py", line 35, in __exit__
[Fri May 18 11:27:33.618632 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
  self.gen.throw(type, value, traceback)
[Fri May 18 11:27:33.618658 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
File "/usr/lib/python2.7/dist-packages/mercurial/lock.py", line 95, in
_delayedinterrupt
[Fri May 18 11:27:33.618683 2018] [wsgi:warn] [pid 31209:tid 139824486274816]  
  signal.signal(num, handler)

Any idea of what going wrong?

Thanks!

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the Mercurial-devel mailing list