gerrit-oauth-provider: invalid_request - OAuth 2 parameters can only have a single value: grant_type

I’ve been unable to login to Gerrit with OAuth because I’m receiving the following error:

[2016-09-27 22:16:31,984] [HTTP-55] ERROR com.google.gerrit.pgm.http.jetty.HiddenErrorHandler : Error in GET /oauth?state=A2eIPFnldmHhWwlFDMU8aF2DBFqga5Gn8tx1vvYnIF4&code=4/NoyEEN7RUGjCleYTxglQzy7rof42ABwAfbJ5ZQNA5js
org.scribe.exceptions.OAuthException: Cannot extract an acces token. Response was: {
  "error" : "invalid_request",
  "error_description" : "OAuth 2 parameters can only have a single value: grant_type"
}
        at com.googlesource.gerrit.plugins.oauth.Google2Api$GoogleJsonTokenExtractor.extract(Google2Api.java:163)
        at com.googlesource.gerrit.plugins.oauth.Google2Api$GoogleOAuthService.getAccessToken(Google2Api.java:112)
        at com.googlesource.gerrit.plugins.oauth.GoogleOAuthService.getAccessToken(GoogleOAuthService.java:221)
        at com.google.gerrit.httpd.auth.oauth.OAuthSession.login(OAuthSession.java:98)
        at com.google.gerrit.httpd.auth.oauth.OAuthWebFilter.doFilter(OAuthWebFilter.java:109)
        at com.google.gwtexpui.server.CacheControlFilter.doFilter(CacheControlFilter.java:73)
        at com.google.gerrit.httpd.RunAsFilter.doFilter(RunAsFilter.java:117)
        at com.google.gerrit.httpd.AllRequestFilter$FilterProxy$1.doFilter(AllRequestFilter.java:136)
        at com.google.gerrit.httpd.AllRequestFilter$FilterProxy.doFilter(AllRequestFilter.java:105)
        at com.google.gerrit.httpd.RequestContextFilter.doFilter(RequestContextFilter.java:75)
        at com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:119)
        at com.google.inject.servlet.GuiceFilter$1.call(GuiceFilter.java:133)
        at com.google.inject.servlet.GuiceFilter$1.call(GuiceFilter.java:130)
        at com.google.inject.servlet.GuiceFilter$Context.call(GuiceFilter.java:203)
        at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:130)
        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
        at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
        at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:221)
        at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
        at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
        at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
        at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
        at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
        at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
        at org.eclipse.jetty.server.handler.RequestLogHandler.handle(RequestLogHandler.java:95)
        at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
        at org.eclipse.jetty.server.Server.handle(Server.java:499)
        at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
        at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
        at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)
        at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
        at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
        at java.lang.Thread.run(Thread.java:745)

@davido, do you know what could be happening here? Where should I dig deeper to find the root cause?

Thanks.

EDIT: This is Gerrit 2.12.5

About this issue

  • Original URL
  • State: closed
  • Created 8 years ago
  • Reactions: 9
  • Comments: 29 (4 by maintainers)

Most upvoted comments

New release (including emergency fix for gerrit.war for those who upgraded to 2.13.x) is here: https://github.com/davido/gerrit-oauth-provider/releases/tag/v2.13.1.

Thanks!

@pslavov There is no need to do this, you should be able to use latest version with your 2.11 gerrit.