If you have a directory with an svn:external link it in (which we use extensively at work), then whenever you merge that directory between branches, every file in the directory gets a new svn:merge-info property.
I'm guessing it's because the external link is not being changed by the merge so svn is counting it it's own subtree (related to, but not the same problem as Why would svn merge of a branch with no changes causes untouched files to modify svn:mergeinfo property).
This results in the actual change being buried in all the merge info property changes, making the changeset both large and almost unreadable. (We have a branch with enough merge history and externals that merging a one line change can result in a 500Kb diff).
So far the only thing we can do is delete the merge properties from the subtrees with svn:external links before committing. This prevents using --reintegrate and means we can't track real subtree merges if they happen.
Does anyone have any better solutions?