[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Bug report: "File not found" error when showing log of file whose folder has been copied from an older revision

From: Michael Schierl <schierlm_at_gmx.de>
Date: Sun, 09 Dec 2012 00:26:23 +0100

Hello,

I'd like to report a bug in TortoiseSVN. It has been around for a while
(at least since 1.6.11) and is still there in 1.7.10, but before I never
found time to really reproduce what it was caused by in our corporate
SVN repository which is several gigabytes large.

This bug only happens in the GUI client, the SVN command line client
does not have this bug, and you can avoid the bug in the GUI by either
requesting a log range that does not include the "problematic" revision
or by enabling log caching and repeatedly clicking refresh until it works.

To reproduce:

1. In TortoiseSVN->Settings->Log Caching, disable log caching. The issue
still happens if log caching is enabled, but it is much harder to
reproduce it - most of the time it helps to refresh a few times to make
the issue go away with log caching enabled - but sometimes, especially
when looking at log from repo browser, you can refresh as often as you
want and will always get the error. (With log caching enabled, sometimes
the bug also manifests in showing each log entry twice or even more
times, but after a refresh it is fine).

2. Create an empty repository (TortoiseSVN->Create repository here)

3. Import unzipped attached repository dump into the empty repository:
svnadmin load c:\path\to\repo < c:\path\to\minimalexample.dump

4. Open repository browser for the repository (right click folder and
select repo browser) - you can also perform a checkout and do the next
steps in the working copy if you prefer.

5. Navigate to trunk/folder2/file, right click file and choose Show Log.

Actual result:
In the log, an error appears "File not found, revision 4, path '/folder2'.

Expected result: Log is shown for the file

6. Now enable Log caching, and repeat steps 4 and 5.

Actual result:
Log is shown, but revision 5 appears twice.

Expected result:
Revision 5 appears only once.

7. Close log and open it again. The log looks nice now again.

In this small repository it is only a small nuisance (when log caching
is enabled), but in our larger repository it can take several refreshes
until the error disappears and the log is shown, and sometimes it does
not work at all. In each of the cases, the revision "after" the one
mentioned in the error message copied an ancestor folder of the file
from a revision that is not the exact previous revision.

(Background: We had several non-SVN repositories that were converted to
SVN by third party tools, then imported in one big SVN repository and
"deleted" before the next import, before finally copying the last
revisions of each repo back to its "real" place, to preserve history and
make annotate useful. That's why most of our files have at least one
ancestor revision where they were copied from an earlier revision, which
makes it more likely for us to see this bug than most other projects, I
guess.)

Thanks for reading, and would be glad if anyone could fix this :-)

Regards,

Michael

------------------------------------------------------
http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=4061&dsMessageId=3034196

To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_tortoisesvn.tigris.org].

Received on 2012-12-09 08:50:39 CET

This is an archived mail posted to the TortoiseSVN Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.