1419: Error uploading diff: The file was not found in the repository (207)

liann*****@gmai***** (Google Code) (Is this you? Claim this profile.)
June 10, 2010
What version are you running?
rb 1.0.5.1 
svn 1.4.2
apache 2.2.3
python2.5

What's the URL of the page containing the problem?
?

What steps will reproduce the problem?
1.using post-review
2.the coding had commited in svn
3. my post-review command:  post-review.exe --
server=http://rb.corp.XXXXX.com/ --repository-
url=http://svn.corp.XXXXX.com/svn/XXXX/trunk/ --revision-range=5548:5549 --
summary="test diff post by XXXXX"
3. from 5548 to 5549 , there are 31 files modified.

What is the expected output? What do you see instead?
//Error uploading diff: The file was not found in the repository (207)
Your review request still exists, but the diff is not attached.

What operating system are you using? What browser?
//winxp with sp2, IE6


Please provide any additional information below.
chipx86
#1 chipx86
I need more information on the file and its circumstances. Is the file that it
references a brand new file in one of those revisions?

If you run with --output-diff, do you see a diff that makes sense for that file?
  • +NeedInfo
#2 liann*****@gmai***** (Google Code) (Is this you? Claim this profile.)
hi chiox86,
  you means, I need test such command like belowed:
   
  post-review.exe --
server=http://rb.corp.XXXXX.com/ --repository-
url=http://svn.corp.XXXXX.com/svn/XXXX/trunk/ --revision-range=5548:5549 --
summary="test diff post by XXXXX" --output-diff

I runned it and see every files diff info between the 2 version.

#3 joseph.*******@gmai***** (Google Code) (Is this you? Claim this profile.)
chipx86,

I am also experiencing this issue here is what I have:

rb 1.0.5.1

svn, version 1.6.6 (r40053)
   compiled Oct 19 2009, 09:36:48

Copyright (C) 2000-2009 CollabNet.
Subversion is open source software, see http://subversion.tigris.org/
This product includes software developed by CollabNet (http://www.Collab.Net/).

The following repository access (RA) modules are available:

* ra_neon : Module for accessing a repository via WebDAV protocol using Neon.
  - handles 'http' scheme
  - handles 'https' scheme
* ra_svn : Module for accessing a repository using the svn network protocol.
  - with Cyrus SASL authentication
  - handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
  - handles 'file' scheme
* ra_serf : Module for accessing a repository via WebDAV protocol using serf.
  - handles 'http' scheme
  - handles 'https' scheme

Apache/2.2.14 (Win32)

Python 2.5.4

using post-review:

post-review --server=http://reviewboard.server.local:8080/ --repository-
url=svn://svnserver/trunk/ --revision-range=12099:12100 --summary="test" --publish -d

>>> svn info svn://svnserver/trunk/
>>> repository info: Path: svn://svnserver, Base path: /trunk, Supports changesets: 
False
>>> svn diff --diff-cmd=diff svn://svnserver/trunk@12099 svn://svnserver/trunk@12100
>>> Looking for 'reviewboard.server.local /' cookie in C:\Documents and 
Settings\user\Local Settings\Application Data\.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/
>>> repository info: Path: svn://svnserver/trunk, Base path: /, Supports changesets: 
False
>>> HTTP POSTing to 
http://reviewboard.server.local:8080/api/json/reviewrequests/new/: 
{'repository_path': 'svn://svnserver/trunk'}
>>> Review request created
>>> Attempting to set field 'summary' to 'test' for review request '53'
>>> HTTP POSTing to 
http://reviewboard.server.local:8080/api/json/reviewrequests/53/draft/set/: 
{'summary': 'test'}
>>> HTTP POSTing to 
http://reviewboard.server.local:8080/api/json/reviewrequests/53/draft/save/: {}
>>> Review request draft saved
>>> Uploading diff, size: 2134
>>> HTTP POSTing to 
http://reviewboard.server.local:8080/api/json/reviewrequests/53/diff/new/: 
{'basedir': '/'}
Error uploading diff: The file was not found in the repository (207)
>>> {'stat': 'fail', 'file': '/trunk/Client/App_Code/VBCode/ClientUtilities.vb', 
'err': {'msg': 'The file was not found in the repository', 'code': 207}, 'revision': 
'12099'}
Your review request still exists, but the diff is not attached.

When I run it with --output-diff it does produce me a nice diff of the 
/trunk/Client/App_Code/VBCode/ClientUtilities.vb file (which was modified in r12100 
and before that it was modified in r11836)

Is there any further information I can provide you?

Thanks!
david
#4 david
  • -NeedInfo
    +New
#5 iacobc******@gmai***** (Google Code) (Is this you? Claim this profile.)
I ran into the same error from post-review and managed to get it working.

For our SVN repository we use the advised layout: trunk, tags, branches. If in the
administration interface I defined the path to the repository including trunk I got
the error above. But removing trunk made it work. I don't know if this is a bug or
expected behavior, to me it looks more like a bug.
chipx86
#6 chipx86
Yeah, you must point to the base of the repository, *not* a path inside of it. We
will be enforcing this behavior for 1.5.
#7 delt*****@gmai***** (Google Code) (Is this you? Claim this profile.)
I've been getting this too when generating a diff from Tortoise which contains the full 
local path c:\Projects\etc...

By changing _get_relative_path in SvnRepositoryInfo (line 217 of postreview.py) of the 
version I'm using to always return the pathdirs instead of just '/' it fixes the 
problem however I'm not sure what ramifications that has as I've only spent a few 
minutes debugging it. Hope that's useful info anyway.
#8 sushil.*******@gmai***** (Google Code) (Is this you? Claim this profile.)
I'm having the same problem. Please help Info below..

ubuntu 9.04
ReviewBoard 1.0.6
Server version: Apache/2.2.11 (Ubuntu)
Server built:   Mar  9 2010 22:04:38


>>> svn info
>>> repository info: Path: http://svn02/svn/perl, Base path:
/perl-group-dashboard/trunk, Supports changesets: False
>>> svn diff --diff-cmd=diff
>>> Looking for 'localhost /' cookie in /home/sushil/.post-review-cookies.txt
>>> Cookie file loaded, but no cookie for this server
==> Review Board Login Required
Enter username and password for Review Board at http://localhost/
Username: sushil
Password: 
>>> Logging in with username "sushil"
>>> HTTP POSTing to http://localhost/api/json/accounts/login/: {'username': 'sushil',
'password': '**************'}
>>> Logged in.
>>> HTTP GETting /api/json/repositories/
>>> HTTP GETting /api/json/repositories/2/info/
>>> repository info: Path: http://svn02/repos/perl/perl-group-dashboard/trunk, Base
path: /, Supports changesets: False
>>> Attempting to create review request on
http://svn02/repos/perl/perl-group-dashboard/trunk for None
>>> HTTP POSTing to http://localhost/api/json/reviewrequests/new/:
{'repository_path': u'http://svn02/repos/perl/perl-group-dashboard/trunk'}
>>> Review request created
>>> Uploading diff, size: 915
>>> HTTP POSTing to http://localhost/api/json/reviewrequests/60/diff/new/:
{'basedir': '/'}
>>> Got API Error 207 (HTTP code 200): The file was not found in the repository
>>> Error data: {u'stat': u'fail', u'file':
u'/perl-group-dashboard/trunk/lib/TLO/Dashboard.pm', u'err': {u'msg': u'The file was
not found in the repository', u'code': 207}, u'revision': u'1847'}
Error uploading diff: The file was not found in the repository
Your review request still exists, but the diff is not attached.


same thing if i run with --output-diff it produces a diff!
what do i do to fix this??


chipx86
#9 chipx86
Is the very tip of the repository http://svn02/repos/perl/, or
http://svn02/repos/perl/perl-group-dashboard/?

  • -New
    +NeedInfo
#12 jeff.g******@gmai***** (Google Code) (Is this you? Claim this profile.)
Why is pointing to the tip of the repo a requirement?
chipx86
#13 chipx86
If you point to a subdirectory within, and generate a diff outside of that
subdirectory, you'll hit problems. Sometimes even if you generate within. Our code
all assumes that every repository's URL specified is the tip of the repository. Part
of that is the information returned from svn itself. Changing these assumptions
complicates things without providing any true benefit.

The fact that users have been able to get away with not doing this with Subversion is
an oversight and one that will bite them in time, and do bite some people today.
david
#14 david
  • -NeedInfo
    +SetupIssue