[issue3220] Exception in 2.1-rc when using MQ

AlbertoGriggio bugs at mercurial.selenic.com
Thu Jan 26 08:35:03 CST 2012


New submission from AlbertoGriggio <alberto.griggio at gmail.com>:

I'm testing the 2.1 RC, and I'm getting the following traceback:

[alb at allblack mathsat5]$ HGPLAIN=1 hg qnew -f --git "p.patch"
transaction abort!
rollback completed
** unknown exception encountered, please report by visiting
**  http://mercurial.selenic.com/wiki/BugTracker
** Python 2.6.5 (r265:79063, Apr 16 2010, 13:09:56) [GCC 4.4.3]
** Mercurial Distributed SCM (version 2.1-rc)
** Extensions loaded: mq
Traceback (most recent call last):
  File "/home/alb/bin/hg", line 38, in <module>
    mercurial.dispatch.run()
  File "/home/alb/src/python/mercurial-2.1-rc/mercurial/dispatch.py", line 
27, in run
    sys.exit((dispatch(request(sys.argv[1:])) or 0) & 255)
  File "/home/alb/src/python/mercurial-2.1-rc/mercurial/dispatch.py", line 
64, in dispatch
    return _runcatch(req)
  File "/home/alb/src/python/mercurial-2.1-rc/mercurial/dispatch.py", line 
87, in _runcatch
    return _dispatch(req)
  File "/home/alb/src/python/mercurial-2.1-rc/mercurial/dispatch.py", line 
683, in _dispatch
    cmdpats, cmdoptions)
  File "/home/alb/src/python/mercurial-2.1-rc/mercurial/dispatch.py", line 
465, in runcommand
    ret = _runcommand(ui, options, cmd, d)
  File "/home/alb/src/python/mercurial-2.1-rc/mercurial/dispatch.py", line 
737, in _runcommand
    return checkargs()
  File "/home/alb/src/python/mercurial-2.1-rc/mercurial/dispatch.py", line 
691, in checkargs
    return cmdfunc()
  File "/home/alb/src/python/mercurial-2.1-rc/mercurial/dispatch.py", line 
680, in <lambda>
    d = lambda: util.checksignature(func)(ui, *args, **cmdoptions)
  File "/home/alb/src/python/mercurial-2.1-rc/mercurial/util.py", line 456, 
in check
    return func(*args, **kwargs)
  File "/home/alb/src/python/mercurial-2.1-rc/hgext/mq.py", line 2247, in 
new
    q.new(repo, patch, *args, **opts)
  File "/home/alb/src/python/mercurial-2.1-rc/hgext/mq.py", line 975, in new
    force=True)
  File "/home/alb/src/python/mercurial-2.1-rc/hgext/mq.py", line 263, in 
secretcommit
    return repo.commit(*args, **kwargs)
  File "/home/alb/src/python/mercurial-2.1-rc/hgext/mq.py", line 3160, in 
commit
    editor, extra)
  File "/home/alb/src/python/mercurial-2.1-rc/mercurial/localrepo.py", line 
1185, in commit
    ret = self.commitctx(cctx, True)
  File "/home/alb/src/python/mercurial-2.1-rc/mercurial/localrepo.py", line 
1279, in commitctx
    phases.retractboundary(self, targetphase, [n])
  File "/home/alb/src/python/mercurial-2.1-rc/mercurial/phases.py", line 
194, in retractboundary
    currentroots = repo._phaseroots[targetphase]
  File "/home/alb/src/python/mercurial-2.1-rc/mercurial/scmutil.py", line 
809, in __get__
    entry.obj = self.func(obj)
  File "/home/alb/src/python/mercurial-2.1-rc/mercurial/localrepo.py", line 
182, in _phaseroots
    phaseroots = phases.readroots(self)
  File "/home/alb/src/python/mercurial-2.1-rc/mercurial/phases.py", line 
124, in readroots
    roots = f(repo, roots)
  File "/home/alb/src/python/mercurial-2.1-rc/hgext/mq.py", line 3136, in 
mqphasedefaults
    qbase = repo[repo.mq.applied[0]]
  File "/home/alb/src/python/mercurial-2.1-rc/mercurial/localrepo.py", line 
230, in __getitem__
    return context.changectx(self, changeid)
  File "/home/alb/src/python/mercurial-2.1-rc/mercurial/context.py", line 
28, in __init__
    self._node = self._repo.lookup(changeid)
  File "/home/alb/src/python/mercurial-2.1-rc/mercurial/localrepo.py", line 
596, in lookup
    n = self.changelog._match(key)
  File "/home/alb/src/python/mercurial-2.1-rc/mercurial/revlog.py", line 
710, in _match
    if len(id) == 20:
TypeError: object of type 'statusentry' has no len()


This happens on a repository with a patch queue containing 104 applied 
patches (using "hg qapplied | wc -l"), and 114 total patches ("hg qseries | 
wc -l"). The patches have been applied with Mercurial 2.0.1, if this 
information can help.

Unfortunately I can't share the repository, and so far I wasn't able to 
reproduce the bug on a "toy" repo. However, I'm willing to help as much as I 
can.

----------
messages: 18742
nosy: AlbertoGriggio
priority: bug
status: unread
title: Exception in 2.1-rc when using MQ
topic: mq

____________________________________________________
Mercurial issue tracker <bugs at mercurial.selenic.com>
<http://mercurial.selenic.com/bts/issue3220>
____________________________________________________


More information about the Mercurial-devel mailing list