diff options
author | Dair Grant <dair@feralinteractive.com> | 2015-11-05 11:26:15 +0100 |
---|---|---|
committer | Eric Wong <normalperson@yhbt.net> | 2015-11-10 02:35:01 +0100 |
commit | 82625748223dd8977f6c1b8cfe53f7353399bd34 (patch) | |
tree | 35915055d92334e76785752519c928539261ab7c /t/t7411-submodule-config.sh | |
parent | Eleventh batch for 2.7 (diff) | |
download | git-82625748223dd8977f6c1b8cfe53f7353399bd34.tar.xz git-82625748223dd8977f6c1b8cfe53f7353399bd34.zip |
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 't/t7411-submodule-config.sh')
0 files changed, 0 insertions, 0 deletions