Speed up Subversion by only getting repo info when necessary.
Review Request #3310 — Created Aug. 28, 2012 and submitted — Latest diff uploaded
Speed up Subversion by only getting repo info when necessary. Our Subversion support was looping over all server-side Subversion repositories in order to compare UUIDs to find a matching repository. This was pretty aggressive, and not really needed if paths matched. We now do two passes. The first checks the paths. If we find a matching repository, we're good. If not, we attempt to scan UUIDs, which is more time-consuming, but hopefully not needed often. This should speed up Subversion in the average case, especially when there are lots of repositories configured for Review Board.
Ran against a local Subversion repository and reviews.reviewboard.org, and with some extra debug info. Saw that it was checking the paths appropriately, and fell back on UUID checks.