2473: post-review fails on a specific file with error 207

kyle*****@gmai***** (Google Code) (Is this you? Claim this profile.)
Feb. 18, 2012
2069
2401
What version are you running?
1.0.5.1

What's the URL of the page containing the problem?
N/A

What steps will reproduce the problem?
1. post-review <file>

What is the expected output? What do you see instead?
Here's the error message I'm seeing:

Error uploading diff: The file was not found in the repository (207)
Your review request still exists, but the diff is not attached.

The file absolutely exists in the repository, so I don't understand why I'm seeing this error.  `svn info` prints out the correct information and post-review --output-diff prints out the correct diff.

What operating system are you using? What browser?
post-review is running on a CentOS 4 system.

Please provide any additional information below.
david
#1 david
Can you run with --debug and post the output here?
  • +NeedInfo
#3 kyle*****@gmai***** (Google Code) (Is this you? Claim this profile.)
>>> svn info
>>> repository info: Path: svn://svn/mgmt-fwk, Base path: /trunk, Supports changesets: False
>>> svn diff --diff-cmd=diff framework/src/bin/web2/python/JSONContent.py
>>> svn info framework/src/bin/web2/python/JSONContent.py
>>> svn info framework/src/bin/web2/python/JSONContent.py
>>> svn info framework/src/bin/web2/python/JSONContent.py
>>> svn info framework/src/bin/web2/python/JSONContent.py
>>> Looking for 'review.lab.nbttech.com /' cookie in /u/kgetz/.post-review-cookies.txt
>>> Loaded valid cookie -- no login required
>>> Attempting to create review request for None
>>> HTTP GETting /api/json/repositories/
>>> HTTP GETting /api/json/repositories/1/info/
>>> HTTP GETting /api/json/repositories/2/info/
>>> repository info: Path: svn://svn/mgmt, Base path: /trunk, Supports changesets: False
>>> HTTP POSTing to https://review.lab.nbttech.com/api/json/reviewrequests/new/: {'repository_path': u'svn://svn/mgmt'}
>>> Review request created
>>> Uploading diff, size: 465
>>> HTTP POSTing to https://review.lab.nbttech.com/api/json/reviewrequests/47036/diff/new/: {'basedir': '/trunk'}
Error uploading diff: The file was not found in the repository (207)
>>> {u'stat': u'fail', u'file': u'/trunk/framework/src/bin/web2/python/JSONContent.py', u'err': {u'msg': u'The file was not found in the repository', u'code': 207}, u'revision': u'94755'}
Your review request still exists, but the diff is not attached.
#4 kyle*****@gmai***** (Google Code) (Is this you? Claim this profile.)
Ah, I see a problem in the debug output that would explain this.  This particular file is in the 'mgmt-fwk' repository, as you can see in the second line:

>>> repository info: Path: svn://svn/mgmt-fwk, Base path: /trunk, Supports changesets: False

However, later on, post-review thinks that the file is in the 'mgmt' repository, which is wrong:

>>> repository info: Path: svn://svn/mgmt, Base path: /trunk, Supports changesets: False
>>> HTTP POSTing to https://review.lab.nbttech.com/api/json/reviewrequests/new/: {'repository_path': u'svn://svn/mgmt'}

This would explain some other behavior I've seen too: when I submit code reviews for files in the 'mgmt-fwk' repository, Review Board says the repository is 'mgmt'.  What could cause this misidentification?
david
#5 david