You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Stefan Fuhrmann <st...@wandisco.com> on 2015/08/15 21:18:53 UTC
Removing deleted branches from our mergeinfo
Hi all,
Our mergeinfo on /trunk as grown to almost 100 branch
entries now. Most of those branches don't exist anymore.
Although we technically could, we will neither merge from
them (using the branch@rev notation) nor resurrect them
in the future. Therefore, I'd like to shave off 15k from our
mergeinfo by removing those unused entries. List below.
Is there a compelling reason not to do it?
-- Stefan^2.
1.10-cache-improvements
1.5.x-r30215
1.7.x-fs-verify
10Gb
atomic-revprop
auto-props-sdc
bdb-reverse-deltas
cache-server
diff-callbacks3
diff-optimizations
diff-optimizations-bytes
dont-save-plaintext-passwords-by-default
double-delete
dump-load-cross-check
explore-wc
file-externals
fs-rep-sharing
fsfs-format7
fsfs-improvements
fsfs-lock-many
fsfs-pack
fsx
fsx-1.10
fsx-id
gnome-keyring
gpg-agent-password-store
gtest_addition
http-protocol-v2
in-memory-cache
in-repo-authz
inheritable-props
integrate-cache-item-serialization
integrate-cache-membuffer
integrate-compression-level
integrate-io-improvements
integrate-is-cachable
integrate-partial-getter
integrate-readline-speedup
integrate-stream-api-extensions
integrate-string-improvements
integrate-txdelta-caching
issue-2779-dev
issue-2843-dev
issue-3000
issue-3067-deleted-subtrees
issue-3148-dev
issue-3220-dev
issue-3242-dev
issue-3334-dirs
issue-3975
issue-4194-dev
kwallet
log-g-performance
merge-skips-obstructions
multi-layer-moves
nfc-nfd-aware-client
node_pool
performance
pin-externals
py-tests-as-modules
ra-svn-tuning
ra_serf-digest-authn
reintegrate-improvements
remote-only-status
revprop-cache
subtree-mergeinfo
svn-auth-x509
svn-info-detail
svn-mergeinfo-enhancements
svn-mergeinfo-normalizer
svn-patch-improvements
svn_mutex
svnpatch-diff
svnraisetc
svnserve-logging
tc-issue-3334
tc-merge-notify
tc-resolve
tc_url_rev
tree-conflicts
tree-conflicts-notify
tristate-chunked-request
tweak-build-take-two
uris-as-urls
verify-at-commit
verify-keep-going
wc-collate-path
Re: Removing deleted branches from our mergeinfo
Posted by Stefan Fuhrmann <st...@wandisco.com>.
On Sun, Aug 16, 2015 at 12:30 AM, Daniel Shahaf <d....@daniel.shahaf.name>
wrote:
> Stefan Fuhrmann wrote on Sat, Aug 15, 2015 at 20:18:53 +0100:
> > Although we technically could, we will neither merge from
> > them (using the branch@rev notation) nor resurrect them
> > in the future. Therefore, I'd like to shave off 15k from our
> > mergeinfo by removing those unused entries. List below.
>
> 15KB of space saving doesn't sound like a noticeable benefit.
>
The "15k" part was just fyi - in case people wanted to
know how big the savings would be.
> > Is there a compelling reason not to do it?
>
> Dogfooding: we shouldn't make changes to our mergeinfo that users cannot
> make too. Would users be able to make such changes to their own
> repositories? (without being with the internals of mergeinfo
> implementation)
>
Yes, using the same command that I planned on using:
svn-mergeinfo-normalizer remove-branches -F $FileWithListOfBranches
If people feel adventurous, they might even do it automatically:
svn-mergeinfo-normalizer normalize --remove-obsoletes
The whole point of that tool is to help large projects to reduce their
mergeinfo from hundreds of MB to something manageable again.
Enhanced sub-tree mergeinfo elision logic will help them somewhat.
But at >100k mergeinfo per node, eliminating the records of mistaken
merges and simply long-forgotten branches is an important feature,
too. Note that those users run out of memory today during merges
because the total amount of merginfo in memory is > 1GB.
The downside of removing branches from m/i is that they appear
as an "unmerge" in the log. Very few people should actually care
but there might be unintended side-effects. As the Subversion
project and with our straightforward branching scheme, we should
be in the best possible position to fix / deal with those side-effects
if they should occur. So, this would be dogfooding for us.
-- Stefan^2.
Re: Removing deleted branches from our mergeinfo
Posted by Daniel Shahaf <d....@daniel.shahaf.name>.
Stefan Fuhrmann wrote on Sat, Aug 15, 2015 at 20:18:53 +0100:
> Although we technically could, we will neither merge from
> them (using the branch@rev notation) nor resurrect them
> in the future. Therefore, I'd like to shave off 15k from our
> mergeinfo by removing those unused entries. List below.
15KB of space saving doesn't sound like a noticeable benefit.
> Is there a compelling reason not to do it?
Dogfooding: we shouldn't make changes to our mergeinfo that users cannot
make too. Would users be able to make such changes to their own
repositories? (without being with the internals of mergeinfo
implementation)
Cheers,
Daniel
> -- Stefan^2.