Files
gerrit/java
Edwin Kempin 36dcc21aad ChangeEditModifier: Reject invalid file paths as '400 Bad Request'
Providing an invalid path is a user error and should not result in a
'500 Internal Server Error' [1].

[1]
AutoRetry: restapi.change.ChangeEdits.Post failed, retry with tracing enabled
org.eclipse.jgit.dircache.InvalidPathException: Invalid path: foo/bar/
  at org.eclipse.jgit.dircache.DirCacheEntry.checkPath(DirCacheEntry.java:837)
  at org.eclipse.jgit.dircache.DirCacheEntry.<init>(DirCacheEntry.java:284)
  at org.eclipse.jgit.dircache.DirCacheEntry.<init>(DirCacheEntry.java:266)
  at org.eclipse.jgit.dircache.DirCacheEditor.applyEdits(DirCacheEditor.java:163)
  at org.eclipse.jgit.dircache.DirCacheEditor.finish(DirCacheEditor.java:132)
  at com.google.gerrit.server.edit.tree.TreeCreator.applyPathEdits(TreeCreator.java:99)
  at com.google.gerrit.server.edit.tree.TreeCreator.createNewTree(TreeCreator.java:73)
  at com.google.gerrit.server.edit.tree.TreeCreator.createNewTreeAndGetId(TreeCreator.java:66)
  at com.google.gerrit.server.edit.ChangeEditModifier.createNewTree(ChangeEditModifier.java:492)
  at com.google.gerrit.server.edit.ChangeEditModifier.modifyTree(ChangeEditModifier.java:333)
  at com.google.gerrit.server.edit.ChangeEditModifier.renameFile(ChangeEditModifier.java:300)
  at com.google.gerrit.server.restapi.change.ChangeEdits$Post.apply(ChangeEdits.java:248)
  at com.google.gerrit.server.restapi.change.ChangeEdits$Post.apply(ChangeEdits.java:222)
  at com.google.gerrit.httpd.restapi.RestApiServlet.lambda$invokeRestCollectionModifyViewWithRetry$10(RestApiServlet.java:858)
  at com.github.rholder.retry.AttemptTimeLimiters$NoAttemptTimeLimit.call(AttemptTimeLimiters.java:78)
  at com.github.rholder.retry.Retryer.call(Retryer.java:160)
  at com.google.gerrit.server.update.RetryHelper.executeWithTimeoutCount(RetryHelper.java:560)
  at com.google.gerrit.server.update.RetryHelper.execute(RetryHelper.java:503)
  at com.google.gerrit.server.update.RetryableAction.call(RetryableAction.java:172)
  at com.google.gerrit.httpd.restapi.RestApiServlet.invokeRestEndpointWithRetry(RestApiServlet.java:883)
  at com.google.gerrit.httpd.restapi.RestApiServlet.invokeRestCollectionModifyViewWithRetry(RestApiServlet.java:853)
  at com.google.gerrit.httpd.restapi.RestApiServlet.service(RestApiServlet.java:563)
  at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
  ...

Signed-off-by: Edwin Kempin <ekempin@google.com>
Change-Id: I7693b4a6c39d7b773101ab5770b158433995f23d
2020-01-16 10:59:37 +09:00
..