subversion-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ignacio González (Eliop) <>
Subject Not so cheap moves
Date Mon, 19 Feb 2018 14:40:45 GMT
Client svn 1.8.13
Server svn 1.8.13 on Centos 7 64 bit
I have a repository with 400 000 revisions.
Proyect X in that repository has the usual trunk / branches / tags
Tags are structured in a dozen of sub-directories:
Project X
 +- trunk
 +- tags
    +-- setA
    +-- setB
    +-- setC

The number of tags under 'setB' is over 3000. All of them are copies of the
trunk at several points in the past.
I want to rename 'setB' to 'setF'.
Easy, I thought: svn mv ....setB .....setF.
No way: after 30 minutes, the server gives up.
No problem, I thought: instead of 1 big rename, do 3000 small moves.
So I created tags/setF and wrote a client-side script with 3000 svn mv
.....setB/label<n> .....setF/label<n>
The script is running fine, but I do not know why it takes around 30
seconds to do each move (3000 x 30 s > 20 hours). Is not each move just one
cheap copy plus a delete? Each new revision occupies about 200 000 bytes
(fsfs); revisions are packed every 1000 revisions.
No real problem, just wondering what is going behind the stage.
Ignacio G.T.

View raw message