While trying to count the lines of code in a Subversion branch which contains renamed folders, Process Dashboard 2.0's LOC Counter fails with the error shown below. I'm trying to use the "Count revisions whose log messages contain the token:". The token I entered is 17218 which is a ticket number on each svn commit.
I've used the LOC Counter lots of times without any problems. But there's something about this combination of SVN commits that's causing a problem.
An unexpected error occurred during the LOC comparison operation:
java.lang.IllegalException: Cannot undelete a file which has not been deleted
at net.sourceforge.processdash.tool.diff.impl.svn.SvnFile.undeleteAndRename(SvnFile.java:100)
at net.sourceforge.processdash.tool.diff.impl.svn.SvnFileSet.handleAddedLogEntries(SvnFileSet.java:397)
at net.sourceforge.processdash.tool.diff.impl.svn.SvnFileSet.processLogEntry(SvnFileSet.java:278)
at net.sourceforge.processdash.tool.diff.impl.svn.SvnFileSet.processLogEntries(SvnFileSet.java:230)
at net.sourceforge.processdash.tool.diff.impl.svn.SvnFileSet.getFilesToAnalyze(SvnFileSet.java:191)
at net.sourceforge.processdash.tool.diff.engine.DiffEngine.addFilesToAnalyze(DiffEngine.java:115)
at net.sourceforge.processdash.tool.diff.ui.LOCDiffDialog$WorkerThread.run(LOCDiffDialog.java:291)
The LOC counter attempts to determine the lineage of renamed files and folders so it can track the modifications within a file even when the file has been renamed or moved. But that is a very tricky problem. Apparently this particular set of folder renames has resulted in file lineage complexities which the LOC counter didn't anticipate.
Unfortunately, I cannot think of any way to troubleshoot the error without connectivity to your SVN repository. :-(
I could setup a webex if you'd like to poke at the Subversion repo.
I'm not sure of the exact steps to reproduce the issue. I think it would be something like:
I'm not having any success duplicating the error, even after performing the directory rename operations as described above.
What svn version is your repository server running?