On Thu, Dec 09, 2021 at 05:07:09PM +0000, Kristofer wrote: > And of course, soon after mailing, I found a workaround. I am not sure why it > worked but anyways: > The problem was caused by the branch being merged to trunk, but the contents > of the "bad directory" was never merged. Then I thought it would be fine to > filter out the bad directory itself, especially since there were no subtree > mergeinfo on it. > But it turned out that I could filter "baddir/badcontent1" and > "baddir/badcontent2" and then the dumpfilter operation worked fine. I still > don't know which revision the actual problem showed up, but it doesn't matter > at this point :) > I suppose there is something with the mergeinfo that I do not understand, but > since I managed to get around it, no need to bother this list further. Sorry > about the noise. >
Nowadays we also support --include and --exclude options in "svnadmin dump" itself which avoids having to pass the dump stream through svndumpfilter. I don't know if this would have prevented your mergeinfo-related problem. But I wanted to mention this in case you would like to try it out. Or just keep it in mind in case you run into such a problem again. In general, the built-in --include and --exclude options can be smarter because they have access to context information while the dump stream is being created. Whereas svndumpfilter can only obtain information from the generated dump stream. $ svnadmin help dump [...] Using --exclude or --include gives results equivalent to authz-based path exclusions. In particular, when the source of a copy is excluded, the copy is transformed into an add (unlike in 'svndumpfilter'). Valid options: [...] --exclude ARG : filter out nodes with given prefix(es) from dump --include ARG : filter out nodes without given prefix(es) from dump [...]