-
Bug
-
Resolution: Answered
-
Low
-
None
-
None
-
Severity 2 - Major
-
2
-
Steps to reproduce
- Have SVN repository with at least one branch and trunk
$ svn diff --summarize -r 1:8 file:///tmp/repository/project1/ A file:///tmp/repository/project1/branches/branch-1/file A file:///tmp/repository/project1/branches/branch-1 A file:///tmp/repository/project1/branches A file:///tmp/repository/project1/trunk/file A file:///tmp/repository/project1/trunk
$ svn log -v file:///tmp/repository/project1/branches/branch-1/file ------------------------------------------------------------------------ r8 | glewandowski | 2016-12-14 12:26:56 +0100 (Wed, 14 Dec 2016) | 1 line Changed paths: M /project1/branches/branch-1/file ------------------------------------------------------------------------ r7 | glewandowski | 2016-12-14 12:26:32 +0100 (Wed, 14 Dec 2016) | 1 line Changed paths: M /project1/branches/branch-1/file ------------------------------------------------------------------------ r6 | glewandowski | 2016-12-14 12:26:14 +0100 (Wed, 14 Dec 2016) | 2 lines Changed paths: A /project1/branches/branch-1 (from /project1/trunk:5) Created branch-1 ------------------------------------------------------------------------ r5 | glewandowski | 2016-12-14 12:26:03 +0100 (Wed, 14 Dec 2016) | 1 line Changed paths: M /project1/trunk/file ------------------------------------------------------------------------ r4 | glewandowski | 2016-12-14 12:25:50 +0100 (Wed, 14 Dec 2016) | 1 line Changed paths: M /project1/trunk/file ------------------------------------------------------------------------ r3 | glewandowski | 2016-12-14 12:25:35 +0100 (Wed, 14 Dec 2016) | 1 line Changed paths: A /project1/trunk/file
- Create review
- Add content via Explore repositories
- Change Add to Review as select to Diffs to ...
- Put 5 (or any commit number which was made on trunk)
Expected behaviour
Revisions project1/branches/branch-1/file@8 and project1/trunk/file@5 are added to review and diff generates properly between them or meaningful information is presented to a user.
Actual behaviour
FishEye ignores logical paths for a file and fails with NPE.
Potentially the same problem exists for Perforce repositories
There's a code which handles such situation when a revision is on a tag and completely disregards the situation like here when it's on a branch.
Code Snippet from com.cenqua.fisheye.svn.db.SvnRevInfoDAO#getRevId
public int getRevId(Path path, long changesetId) throws DbException { int revid = getPureRevId(path, changesetId); if (revid == -1 && pathMatcher.isTag(path)) { String tag = pathMatcher.getTag(path); Path logicalPath = getLogicalPath(path); revid = getTaggedPathRevid(logicalPath, tag, changesetId); } return revid; }
Workaround
If user wants to generate diff to a branch point, simply se Diff to branch point
- is related to
-
CRUC-5898 Unable to add content to review via "Browse Changeset" when using "Diffs to..."
- Long Term Backlog