1653: post-review polls all svn repositories
- Fixed
- Review Board
AaronJ*******@gmai***** (Google Code) (Is this you? Claim this profile.) | |
Jan. 30, 2014 |
What version are you running? tested on several versions, latest was RBTools 0.2 against reviewboard 1.0.8. What's the URL of the page containing the problem? N/A What steps will reproduce the problem? 1. Add an svn repo to reviewboard 2. Add a second svn repo to reviewboard 3. Check out the second repo 4. Make a change 5. Set .reviewboardrc if needed 6. post-review If you watch the logs while you do this, you will see that the first repository is polled before contacting the second. I understand that "svn info" doesn't always give you the same URL as the one that was inserted into reviewboard's configuration (e.g. if someone checked out locally or via a different protocol). However, when the two do match, polling each repository exposes the user to failure modes that have nothing to do with the repository that they are trying to use. I would think that the correct solution is to try to match the svn info URL against the list of repositories without polling them, and then to poll the repositories if more information is needed to make the match.
This is part of the debug output when posting a review. Note that the error from repository 7 is not an error associated with the repository that I'm trying to post to. Instead, post-review is iterating through the repositories that I've set up (seems like just the svn ones), and the server is, in turn, contacting each repository, performing a number of WebDAV actions on each one. >>> HTTP GETting /api/json/repositories/ >>> HTTP GETting /api/json/repositories/7/info/ >>> Got API Error 210 (HTTP code 200): There was an error fetching extended information for this repository. >>> Error data: {u'stat': u'fail', u'err': {u'msg': u'There was an error fetching extended information for this repository.', u'code': 210}} >>> HTTP GETting /api/json/repositories/15/info/ >>> HTTP GETting /api/json/repositories/16/info/ >>> HTTP GETting /api/json/repositories/27/info/ >>> HTTP GETting /api/json/repositories/29/info/