p4ic4idea icon indicating copy to clipboard operation
p4ic4idea copied to clipboard

After change in perforce password, repeated authentication failed error is being returned

Open nitin065 opened this issue 4 years ago • 1 comments

Describe the bug I am using "Require Password" option. When I change perforce password, plugin is not able to recognize the change and there is no popup to request for a new password. I tried to delete the p4tckets.txt, it is complaining about missing file, which clearly should not happen because as per guide this file is ignored for the said option.

To Reproduce Steps to reproduce the behavior:

  1. Configure version control with directory option and property containing "Require password."
  2. Change p4 password.
  3. Click on Check Connection from version control.
  4. Error shows says "unknown error" and console says" Perforce Server Error: Request error: Authentication failed. (code s:7/g:2/c:689)"

Expected behavior Should Work as designed.

Attachments image image

Desktop (please complete the following information):

  • OS: Windows
  • IDE and version: IntelliJ IDEA 2020.3 (Community Edition) Build #IC-203.5981.155, built on December 1, 2020 Runtime version: 11.0.9+11-b1145.21 amd64 VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o. Windows 10 10.0 GC: ParNew, ConcurrentMarkSweep Memory: 1979M Cores: 12 Registry: decompiler.dump.original.lines=true Non-Bundled Plugins: PerforceIC, CheckStyle-IDEA, ccom.intellij.idea.plugin.commerce.integration

Stack Trace:

2021-02-23 17:31:08,045 [106142368] INFO - .vcsroot.P4VcsRootConfigurable - Server connection attempt failed net.groboclown.p4.server.api.P4CommandRunner$ServerResultException: unknown problem at net.groboclown.p4.server.impl.commands.AnswerUtil.createFor(AnswerUtil.java:69) at net.groboclown.p4.server.impl.connection.impl.SimpleConnectionManager.lambda$startPromise$8(SimpleConnectionManager.java:607) at net.groboclown.p4.server.api.async.AsyncAnswer.lambda$background$0(AsyncAnswer.java:49) at com.intellij.util.RunnableCallable.call(RunnableCallable.java:20) at com.intellij.util.RunnableCallable.call(RunnableCallable.java:11) at com.intellij.openapi.application.impl.ApplicationImpl$1.call(ApplicationImpl.java:270) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668) at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665) at java.base/java.security.AccessController.doPrivileged(Native Method) at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665) at java.base/java.lang.Thread.run(Thread.java:834) 2021-02-23 17:31:08,256 [106142579] INFO - p4 - cmd (1): p4 info 2021-02-23 17:31:08,673 [106142996] INFO - p4 - cmd (2): p4 login -p 2021-02-23 17:31:10,013 [106144336] WARN - nnection.P4RequestErrorHandler - Running an action with the Perforce server server:{P4TRUST=(unset), P4PASSWD=(empty), P4PORT=mucp4:1999, P4TICKETS=(unset), P4USER=nsasi, P4FINGERPRINT=(unset), P4LOGINSSO=(unset)} generated an error. com.perforce.p4java.exception.RequestException: Authentication failed. at com.perforce.p4java.impl.mapbased.server.cmd.ResultMapParser.handleErrors(ResultMapParser.java:191) at com.perforce.p4java.impl.mapbased.server.cmd.ResultMapParser.handleErrorStr(ResultMapParser.java:173) at com.perforce.p4java.impl.mapbased.server.cmd.LoginDelegator.login(LoginDelegator.java:136) at com.perforce.p4java.impl.mapbased.server.cmd.LoginDelegator.login(LoginDelegator.java:109) at com.perforce.p4java.impl.mapbased.server.Server.login(Server.java:2141) at net.groboclown.p4.server.impl.connection.impl.SimpleConnectionManager.connect(SimpleConnectionManager.java:236) at net.groboclown.p4.server.impl.connection.impl.SimpleConnectionManager.lambda$null$2(SimpleConnectionManager.java:152) at net.groboclown.p4.server.impl.connection.P4RequestErrorHandler.handleConnection(P4RequestErrorHandler.java:157) at net.groboclown.p4.server.impl.connection.P4RequestErrorHandler.handle(P4RequestErrorHandler.java:71) at net.groboclown.p4.server.impl.connection.impl.SimpleConnectionManager.lambda$handleAsync$6(SimpleConnectionManager.java:583) at net.groboclown.p4.server.impl.connection.impl.SimpleConnectionManager.lambda$startPromise$8(SimpleConnectionManager.java:597) at net.groboclown.p4.server.api.async.AsyncAnswer.lambda$background$0(AsyncAnswer.java:49) at com.intellij.util.RunnableCallable.call(RunnableCallable.java:20) at com.intellij.util.RunnableCallable.call(RunnableCallable.java:11) at com.intellij.openapi.application.impl.ApplicationImpl$1.call(ApplicationImpl.java:270) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668) at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665) at java.base/java.security.AccessController.doPrivileged(Native Method) at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665) at java.base/java.lang.Thread.run(Thread.java:834) 2021-02-23 17:31:10,014 [106144337] ERROR - n.impl.SimpleConnectionManager - Command generated unexpected problem; making it look like an interrupted error java.lang.IllegalArgumentException: Argument for @NotNull parameter 'config' of net/groboclown/p4/server/api/messagebus/ServerErrorEvent$ServerMessageEvent. must not be null at net.groboclown.p4.server.api.messagebus.ServerErrorEvent$ServerMessageEvent.$$$reportNull$$$0(ServerErrorEvent.java) at net.groboclown.p4.server.api.messagebus.ServerErrorEvent$ServerMessageEvent.(ServerErrorEvent.java) at net.groboclown.p4.server.impl.connection.impl.MessageP4RequestErrorHandler.handleException(MessageP4RequestErrorHandler.java:389) at net.groboclown.p4.server.impl.connection.P4RequestErrorHandler.handleConnection(P4RequestErrorHandler.java:162) at net.groboclown.p4.server.impl.connection.P4RequestErrorHandler.handle(P4RequestErrorHandler.java:71) at net.groboclown.p4.server.impl.connection.impl.SimpleConnectionManager.lambda$handleAsync$6(SimpleConnectionManager.java:583) at net.groboclown.p4.server.impl.connection.impl.SimpleConnectionManager.lambda$startPromise$8(SimpleConnectionManager.java:597) at net.groboclown.p4.server.api.async.AsyncAnswer.lambda$background$0(AsyncAnswer.java:49) at com.intellij.util.RunnableCallable.call(RunnableCallable.java:20) at com.intellij.util.RunnableCallable.call(RunnableCallable.java:11) at com.intellij.openapi.application.impl.ApplicationImpl$1.call(ApplicationImpl.java:270) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668) at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665) at java.base/java.security.AccessController.doPrivileged(Native Method) at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665) at java.base/java.lang.Thread.run(Thread.java:834) 2021-02-23 17:31:10,014 [106144337] ERROR - n.impl.SimpleConnectionManager - IntelliJ IDEA 2020.3 Build #IC-203.5981.155 2021-02-23 17:31:10,014 [106144337] ERROR - n.impl.SimpleConnectionManager - JDK: 11.0.9; VM: OpenJDK 64-Bit Server VM; Vendor: JetBrains s.r.o. 2021-02-23 17:31:10,015 [106144338] ERROR - n.impl.SimpleConnectionManager - OS: Windows 10 2021-02-23 17:31:10,015 [106144338] ERROR - n.impl.SimpleConnectionManager - Plugin to blame: Perforce IDEA Community Integration version: 0.11.2

nitin065 avatar Feb 22 '21 05:02 nitin065

Thanks for the bug report. This is a long standing weakness in the plugin, due to attempts to reduce the number of login attempts made on the connections and dealing with pulling the password from the OS password store. I've made some experiments to try to rectify this in a simple way, but it looks like this will need a deeper fix.

For those curious, the code in question is SimpleConnectionManager, which is only simple in that it's much more simple than the previous versions.

groboclown avatar Apr 08 '21 21:04 groboclown