show-log tasks very long time on folder which has no commit on the new branch

41 views
Skip to first unread message

Jacky Zhao

unread,
Jul 24, 2024, 5:49:37 AMJul 24
to TortoiseSVN
We have a repository with revision grows up to about 900000, and recently we try to make a Copy(Branch) every 4 weeks.

The problem is that if we want to show-log of a folder which yet has no commit in the new branch, we will stuck for minutes till the logs show. And the first log will be "new branch created". 

We've debugged this issue with up-to-date source code built binary, and found out the most time-cost part is in method MakeRangeIterable.

For example:
1. file A in folder ROOTDIR/F1/F2 has serveral revision(300000, 310000,320000) in branch B1,
2. file A's svn url in B1 is "ROOTURL/Branches/B1/ROOTDIR/F1/F2/A"
3. new branch B2 is created at revision 700000
4. file A's svn url in B2 is "ROOTURL/Branches/B2/ROOTDIR/F1/F2/A"
5. now current revision is 800000, show-log on A or F2 will run into MakeRangeIterable with path="ROOTURL/Branches/B1/ROOTDIR", startRevision=800000, endRevision=700001
6. at last, this will query svn server with [700001, 800000] on "ROOTURL/Branches/B1/ROOTDIR", then stuck for minutes.


Stefan

unread,
Jul 25, 2024, 12:34:47 AMJul 25
to TortoiseSVN


On Wednesday, July 24, 2024 at 11:49:37 AM UTC+2 Jacky Zhao wrote:
...

5. now current revision is 800000, show-log on A or F2 will run into MakeRangeIterable with path="ROOTURL/Branches/B1/ROOTDIR", startRevision=800000, endRevision=700001
6. at last, this will query svn server with [700001, 800000] on "ROOTURL/Branches/B1/ROOTDIR", then stuck for minutes.


So it's waiting for the server response. Which means nothing we can do to improve performance on the client side. 

Johan Corveleyn

unread,
Jul 29, 2024, 5:46:12 AMJul 29
to TortoiseSVN on behalf of Stefan
If you're only interested in the history on the B2 branch
("ROOTURL/Branches/B2/ROOTDIR/F1/F2/A"), maybe the checkbox "Stop on
copy/rename" in the Show log popup might help. Does this avoid the
costly call?

--
Johan
Reply all
Reply to author
Forward
0 new messages