diff options
author | Dair Grant <dair@feralinteractive.com> | 2015-11-05 10:26:15 +0000 |
---|---|---|
committer | Eric Wong <normalperson@yhbt.net> | 2015-11-10 01:35:01 +0000 |
commit | 82625748223dd8977f6c1b8cfe53f7353399bd34 (patch) | |
tree | 35915055d92334e76785752519c928539261ab7c /contrib/subtree | |
parent | Eleventh batch for 2.7 (diff) | |
download | tgif-82625748223dd8977f6c1b8cfe53f7353399bd34.tar.xz |
git-svn: improve rebase/mkdirs performance
Processing empty_dir directives becomes extremely slow for svn
repositories with a large enough history.
This is due to using a single hash to store the list of empty
directories, with the expensive step being purging items from
that hash using grep+delete.
Storing directories in a hash of hashes improves the performance
of this purge step and removes a potentially lengthy delay after
every rebase/mkdirs command.
The svn repository with this behaviour has 110K commits with
unhandled.log containing 170K empty_dir directives.
This takes 10 minutes to process when using a single hash, vs
3 seconds with a hash of hashes.
Signed-off-by: Dair Grant <dair@feralinteractive.com>
Signed-off-by: Eric Wong <normalperson@yhbt.net>
Diffstat (limited to 'contrib/subtree')
0 files changed, 0 insertions, 0 deletions