#1284 closed task (fixed)
assertion on viewing revtree
Reported by: | anonymous | Owned by: | Emmanuel Blot |
---|---|---|---|
Priority: | high | Component: | QrCodePlugin |
Severity: | major | Keywords: | |
Cc: | Trac Release: | 0.10 |
Description
I just got this backtrace on trying revtree:
Traceback (most recent call last):
File "/usr/lib/python2.5/site-packages/trac/web/main.py", line 387, in dispatch_request
dispatcher.dispatch(req)
File "/usr/lib/python2.5/site-packages/trac/web/main.py", line 237, in dispatch
resp = chosen_handler.process_request(req)
File "build/bdist.linux-i686/egg/revtree/web_ui.py", line 186, in process_request
return self._process_revtree(req)
File "build/bdist.linux-i686/egg/revtree/web_ui.py", line 314, in _process_revtree
repos.build(self.bcre, revrange=(self.oldest, youngest))
File "build/bdist.linux-i686/egg/revtree/model.py", line 309, in build
chgset.build(bcre)
File "build/bdist.linux-i686/egg/revtree/model.py", line 58, in build
raise AssertionError, "%s rev: %d" % (e, self.rev or 0)
AssertionError: Incoherent path [trunk] != [tags] rev: 2259
just set everything to the defaults said on the RevTree site.
Attachments (0)
Change History (11)
comment:1 Changed 18 years ago by
comment:2 Changed 18 years ago by
I am not completely sure about that revision, it was created by cvs2svn to create a tag and it shows that tag as copied and several trunk directories as removed (although it wasnt really removed). You can have a look yourself at http://bugtrack.projectiwear.org/changeset/2259 if that is of any help. When I remove tag from the branch_re regex then I get the following error:
Traceback (most recent call last):
File "/usr/lib/python2.5/site-packages/trac/web/main.py", line 387, in dispatch_request
dispatcher.dispatch(req)
File "/usr/lib/python2.5/site-packages/trac/web/main.py", line 237, in dispatch
resp = chosen_handler.process_request(req)
File "build/bdist.linux-i686/egg/revtree/web_ui.py", line 186, in process_request
return self._process_revtree(req)
File "build/bdist.linux-i686/egg/revtree/web_ui.py", line 314, in _process_revtree
repos.build(self.bcre, revrange=(self.oldest, youngest))
File "build/bdist.linux-i686/egg/revtree/model.py", line 309, in build
chgset.build(bcre)
File "build/bdist.linux-i686/egg/revtree/model.py", line 55, in build
if not self._find_simple_branch(bcre):
File "build/bdist.linux-i686/egg/revtree/model.py", line 83, in _find_simple_branch
item = change_gen.next()
StopIteration
comment:3 Changed 18 years ago by
Resolution: | → invalid |
---|---|
Status: | new → closed |
From http://bugtrack.projectiwear.org/changeset/2259
This is the root cause: this revision contains changes in both /tags
(help
has been added) and /trunk
(several files have been removed).
As a single revision contains modifications in several branches, no revtree can be generated with this revision.
Closing as invalid, as there is nothing the revtree can do here.
You can define the first revision to consider in the [revtree] section: revtree ignores all revisions before this revision, so you can still render new revisions as long as you comply with the "rule" (all the changes of a single revision must be commited in the same branch)
BTW: please always use {{{ }}} blocks when you quote Python traceback. Thanks
comment:4 follow-up: 6 Changed 18 years ago by
Resolution: | invalid |
---|---|
Severity: | blocker → major |
Status: | closed → reopened |
Maybe Im the only one but that isnt obvious to me from the backtrace, maybe it should give an explaining message instead? Anyways I doubt that there really was a change in trunk as neither http://bugtrack.projectiwear.org/log/trunk/map nor e.g. http://bugtrack.projectiwear.org/changeset?old_path=trunk%2Fmap&old=2246&new_path=trunk%2Fmap&new=2260 show changes there, and the cmd issued at that time seems to be only a standard copy for creating a tag of a subdir, maybe trac in general is confused here?
comment:5 follow-up: 7 Changed 18 years ago by
doing a
svn log -vq -r 2259 https://svn.projectiwear.org/home/svn/iwear/src/
shows that trac gets it somehow wrong...
comment:6 follow-up: 8 Changed 18 years ago by
Replying to anonymous:
Maybe Im the only one but that isnt obvious to me from the backtrace, maybe it should give an explaining message instead?
Yeah, maybe the error message could be improved. The error message reports the error, not why the error has been caused.
The trouble is that I'm not sure this kind of error can only occur because of a commit spread over several branches. Reporting a more detailled message when some inconsistency is detected maybe misleading as well...
Anyways I doubt that there really was a change in trunk as neither http://bugtrack.projectiwear.org/log/trunk/map
This URL leads to a directory, I'm not sure what you wanted to show here?
comment:7 Changed 18 years ago by
Replying to anonymous:
svn log -vq -r 2259 https://svn.projectiwear.org/home/svn/iwear/src/ shows that trac gets it somehow wrong...
It looks like you've bumped into the issue I got last week ;-)
Have a look at t:ticket:4900
The SVN Python wrapper do not provide enough information, so Trac cannot "guess" right.
comment:8 Changed 18 years ago by
Anyways I doubt that there really was a change in trunk as neither http://bugtrack.projectiwear.org/log/trunk/map
This URL leads to a directory, I'm not sure what you wanted to show here?
As the next comment:4 says, there is no real remove in the directory where trac thinks it is, its rather a creation of a tag in a subdirectory which is done by (cvs2)svn internally as a copy of the whole dir and then a remove of the directories which should not be in the tag.
comment:9 Changed 18 years ago by
Priority: | high → low |
---|
- About the root cause of the error: as long as the SVN wrapper do not provide enough information to analyse a changeset, there's nothing Trac or the plugin can do to obtain the proper values. This kind of issue depends on an externality, this is why I decrease the priority.
- About the error message itself: checkout the latest plugin release [2111]: the RevtreePlugin should now be more resilient: it simply ignores invalid changesets and resumes rendering the revtree graph.
comment:10 Changed 18 years ago by
Resolution: | → fixed |
---|---|
Status: | reopened → closed |
comment:11 Changed 14 years ago by
Component: | RevtreePlugin → QrCodePlugin |
---|---|
Priority: | low → high |
Type: | defect → task |
This usually means that your revision 2259 contains changes for both /trunk and /tags branches.
The Revtree cannot render a tree when a single revision contains files spread over multiple branches.
Can you check the file changes for this revision?