4895: The file was not found in the repository. (HTTP 400, API Error 207)

keri

What version are you running?

-RBTools 2.0 (Python 3.6.8) installed on windows 10
-diffutils-2.8.7-1.exe installed on windows 10
-reviewboard 3.0.19 installed on Linux 18.04 with python 2.7

What steps will reproduce the problem?

  1. put .reviewboardrc in the SVN check-out root folder. For example: ABC

REVIEWBOARD_URL = "http://x.x.x.x:8080/reviewboard"
REPOSITORY = "https://x.x.x.x:x/svn/Automation"
REPOSITORY_TYPE = "svn"
USERNAME = "adxx"
PASSWORD = "xxxx"

  1. run cmd under ABC folder below for a updated script
    here is the script whole path on SVN
    https://x.x.x.x:x/svn/Automation/ABC/status_monitor_mail.py

rbt cmd is:

rbt post -p -d -I status_monitor\mail.py --summary=test --description="test" --target-group=14D --target-people=xxx.xxx

Above cmd is working for a brand-new script but failed for a updated existing script.

What is the expected output? What do you see instead?

expected result: It post the review on reviewboard
actual result: /Automation/Stress14Days/status_monitor/mail.py: The file was not found in the repository. (HTTP 400, API Error 207)

What operating system are you using?

SVN docker on linux
TortoiseSVN on windows 10

Attach the debug out from the command.

$ rbt <command> --debug <args>
<debug output>

c:\code\Stress14Days>rbt post -p -d -I=stress_test.py --summary=stress_test --description="test" --target-group=14D --target-people=larry.chen

RBTools 2.0
Python 3.6.8 (tags/v3.6.8:3c6b436a57, Dec 24 2018, 00:16:47) [MSC v.1916 64 bit (AMD64)]
Running on Windows-10-10.0.18362-SP0
Home = C:\Users\SQA_K\AppData\Roaming
Current directory = c:\code\Stress14Days
Command line: rbt post -p -d -I=stress_test.py --summary=stress_test --description=test --target-group=14D --target-people=larry.chen
Running: tf vc help
Checking for a Subversion repository...
Running: svn --non-interactive info
Running: diff --version
Running: svn --non-interactive --version -q
Repository info: Path: https://x.x.x.x:33690/svn, Base path: /Automation/Stress14Days, Supports changesets: False
Making HTTP GET request to http://x.x.x.x:8080/reviewboard/api/
Making HTTP GET request to http://x.x.x.x:8080/reviewboard/api/repositories/?tool=Subversion
Cached response for HTTP GET http://x.x.x.x:8080/reviewboard/api/repositories/?tool=Subversion expired and was modified
Making HTTP GET request to http://x.x.x.x:8080/reviewboard/api/repositories/2/info/
Cached response for HTTP GET http://x.x.x.x:8080/reviewboard/api/repositories/2/info/ expired and was modified
Repository info: Path: https://x.x.x.x:33690/svn/Automation, Base path: /Stress14Days, Supports changesets: False
Running: svn --non-interactive status -q --ignore-externals stress_test.py
Running: svn --non-interactive diff --diff-cmd=diff --notice-ancestry -r BASE stress_test.py
Running: svn --non-interactive diff --diff-cmd=diff --notice-ancestry -r BASE stress_test.py --no-diff-deleted
Running: svn --non-interactive info stress_test.py
Command exited with rc 1: ['svn', '--non-interactive', 'info', 'stress_test.py\r']
["svn: E020024: Error resolving case of 'stress_test.py\n", "'\n"]---
Running: svn --non-interactive info stress_test.py
Making HTTP GET request to http://x.x.x.x:8080/reviewboard/api/validation/diffs/
Cached response for HTTP GET http://x.x.x.x:8080/reviewboard/api/validation/diffs/ expired and was modified
Making HTTP POST request to http://x.x.x.x:8080/reviewboard/api/validation/diffs/
Got API Error 207 (HTTP code 400): The file was not found in the repository.
Error data: {'stat': 'fail', 'err': {'msg': 'The file was not found in the repository.', 'code': 207}, 'file': '/Automation/Stress14Days/stress_test.py', 'revision':
Traceback (most recent call last):
File "c:\python36\lib\site-packages\rbtools\api\request.py", line 813, in make_request
request.url, body, headers, request.method))
File "c:\python36\lib\site-packages\rbtools\api\cache.py", line 209, in make_request
return self.urlopen(request)
File "c:\python36\lib\urllib\request.py", line 223, in urlopen
return opener.open(url, data, timeout)
File "c:\python36\lib\urllib\request.py", line 532, in open
response = meth(req, response)
File "c:\python36\lib\site-packages\rbtools\api\request.py", line 361, in http_response
response.info())
File "c:\python36\lib\urllib\request.py", line 570, in error
return self._call_chain(args)
File "c:\python36\lib\urllib\request.py", line 504, in _call_chain
result = func(
args)
File "c:\python36\lib\urllib\request.py", line 650, in http_error_default
raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 400: BAD REQUEST

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "c:\python36\lib\site-packages\rbtools\commands\post.py", line 1081, in main
squashed_diff)
File "c:\python36\lib\site-packages\rbtools\commands\post.py", line 1464, in _validate_squashed_diff
validate_kwargs)
File "c:\python36\lib\site-packages\rbtools\api\decorators.py", line 27, in request_method
*args,
kwargs)
File "c:\python36\lib\site-packages\rbtools\api\transport\sync.py", line 82, in execute_request_method
return self._execute_request(request)
File "c:\python36\lib\site-packages\rbtools\api\transport\sync.py", line 91, in _execute_request
rsp = self.server.make_request(request)
File "c:\python36\lib\site-packages\rbtools\api\request.py", line 815, in make_request
self.process_error(e.code, e.read())
File "c:\python36\lib\site-packages\rbtools\api\request.py", line 789, in process_error
rsp['err']['msg'])
rbtools.api.errors.BadRequestError: The file was not found in the repository. (HTTP 400, API Error 207)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "c:\python36\lib\runpy.py", line 193, in _run_module_as_main
"main", mod_spec)
File "c:\python36\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "C:\Python36\Scripts\rbt.exe__main__.py", line 7, in <module>
File "c:\python36\lib\site-packages\rbtools\commands\main.py", line 124, in main
command.run_from_argv([RB_MAIN, command_name] + args)
File "c:\python36\lib\site-packages\rbtools\commands__init__.py", line 770, in run_from_argv
exit_code = self.main(*args) or 0
File "c:\python36\lib\site-packages\rbtools\commands\post.py", line 1093, in main
% (msg_prefix, e))
rbtools.commands.CommandError: Error validating diff

Automation/Stress14Days/stress_test.py: The file was not found in the repository. (HTTP 400, API Error 207)

Attach the debug out from the command.

#1 keri

svn, version 1.9.7 (r1800392)
compiled Aug 16 2017, 16:00:04 on x86_64-pc-linux-gnu

#2 keri

Above cmd is working for a brand-new script but failed for a updated existing script.