java.lang.InterruptedException

There are no available Samebug tips for this exception. Do you have an idea how to solve this issue? A short tip would help users who saw this issue last week.

  • CpsScmFlowDefinition.create() is hard coded to append the "@script" suffix onto workspace directories (line 94 of CpsScmFlowDefinition.java). This suffix string should at least respect the hudson.slaves.WorkspaceList separator character, or provide some other way to change this suffix string, as the @ symbol is often treated as a special character by various tools. Currently, it is entirely impossible to use the workflow plugin with Perforce due to this bug, as @ is an illegal character in Perforce paths. Trying to run a hello world script using "Groovy CPS DSL from SCM" results in: ERROR: failed to start build java.lang.InterruptedException: P4: Unable to setup workspace: com.perforce.p4java.exception.RequestException: Error in client specification. Embedded special characters (*, %%, #, @) not allowed in 'C:\Program Files (x86)\Jenkins\jobs\<redacted>\workspace@script'. at org.jenkinsci.plugins.p4.tasks.AbstractTask.setWorkspace(AbstractTask.java:63) at org.jenkinsci.plugins.p4.PerforceScm.checkout(PerforceScm.java:277) at org.jenkinsci.plugins.workflow.steps.scm.SCMStep.checkout(SCMStep.java:106) at org.jenkinsci.plugins.workflow.cps.CpsScmFlowDefinition.create(CpsScmFlowDefinition.java:108) at org.jenkinsci.plugins.workflow.cps.CpsScmFlowDefinition.create(CpsScmFlowDefinition.java:57) at org.jenkinsci.plugins.workflow.job.WorkflowRun.run(WorkflowRun.java:181) at hudson.model.ResourceController.execute(ResourceController.java:98) at hudson.model.Executor.run(Executor.java:374)
    via by A C,
  • CpsScmFlowDefinition.create() is hard coded to append the "@script" suffix onto workspace directories (line 94 of CpsScmFlowDefinition.java). This suffix string should at least respect the hudson.slaves.WorkspaceList separator character, or provide some other way to change this suffix string, as the @ symbol is often treated as a special character by various tools. Currently, it is entirely impossible to use the workflow plugin with Perforce due to this bug, as @ is an illegal character in Perforce paths. Trying to run a hello world script using "Groovy CPS DSL from SCM" results in: ERROR: failed to start build java.lang.InterruptedException: P4: Unable to setup workspace: com.perforce.p4java.exception.RequestException: Error in client specification. Embedded special characters (*, %%, #, @) not allowed in 'C:\Program Files (x86)\Jenkins\jobs\<redacted>\workspace@script'. at org.jenkinsci.plugins.p4.tasks.AbstractTask.setWorkspace(AbstractTask.java:63) at org.jenkinsci.plugins.p4.PerforceScm.checkout(PerforceScm.java:277) at org.jenkinsci.plugins.workflow.steps.scm.SCMStep.checkout(SCMStep.java:106) at org.jenkinsci.plugins.workflow.cps.CpsScmFlowDefinition.create(CpsScmFlowDefinition.java:108) at org.jenkinsci.plugins.workflow.cps.CpsScmFlowDefinition.create(CpsScmFlowDefinition.java:57) at org.jenkinsci.plugins.workflow.job.WorkflowRun.run(WorkflowRun.java:181) at hudson.model.ResourceController.execute(ResourceController.java:98) at hudson.model.Executor.run(Executor.java:374)
    via by A C,
  • I was attempting to publish assets as a post build action in one of my jobs and didn't realise the perforce server that it would publish to wasn't online. The error I got was not helpful, but a Null Pointer instead: {code:java} ERROR: Publisher 'Perforce: Publish assets' aborted due to exception: java.lang.InterruptedException: P4: Unable to setup workspace: java.lang.NullPointerException at org.jenkinsci.plugins.p4.tasks.AbstractTask.setWorkspace(AbstractTask.java:63) at org.jenkinsci.plugins.p4.asset.AssetNotifier.perform(AssetNotifier.java:87) at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20) at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:779) at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:726) at hudson.model.Build$BuildExecution.post2(Build.java:185) at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:671) at hudson.model.Run.execute(Run.java:1769) at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43) at hudson.model.ResourceController.execute(ResourceController.java:98) at hudson.model.Executor.run(Executor.java:374) {code} I'm assuming there was a proper error message at some point about not being able to connect to the perforce server but that was lost by a Null Pointer which sent me on a wild goose chase for a while until I realised what was really going on. Looking at the code in AbstractTask.java I'm assuming {{ClientHelper p4 = getConnection();}} doesn't error if it can't get a connection, it just returns null and the code below doesn't check for that first? The catch block does nothing to show the full stack of Exception e, so it's hard to say for sure where the Null Pointer comes from, but that's my guess anyway. Ideally it would throw a {{RuntimeException(err, e);}} instead of the {{InterruptedException(err);}}?
    via by Nick Palmer,
  • Experiencing some weird behavior re: tickets and p4 jenkins plugin. BEFORE: {noformat} [~jenkins] root# rm .p4tickets [~jenkins] root# ls -al {noformat} NOW GO TO JENKINS, and test password credential AFTER: {noformat} [~jenkins] root# ls -al total 8 drwxr-xr-x+ 4 jenkins staff 136 Mar 10 15:55 ./ drwxr-xr-x 9 root admin 306 Mar 10 15:31 ../ -r-------- 1 root staff 68 Mar 10 15:55 .p4tickets {noformat} So the act of testing the password credential adds a ticket file. Next, I remove .p4tickets and test my ticketed credential. Does not create {{.p4tickets}} and test succeeds. Now I go to a job that depends on ticketed credential I just tested, and run it. Job fails with: {noformat} SEVERE: P4: Unable to use Workspace: com.perforce.p4java.exception.AccessException: Perforce password (P4PASSWD) invalid or unset. com.perforce.p4java.exception.AccessException: Perforce password (P4PASSWD) invalid or unset. at com.perforce.p4java.impl.mapbased.server.Server.handleErrorStr(Server.java:4987) at com.perforce.p4java.impl.mapbased.server.Server.getClient(Server.java:2433) at org.jenkinsci.plugins.p4.client.ClientHelper.clientLogin(ClientHelper.java:69) at org.jenkinsci.plugins.p4.client.ClientHelper.<init>(ClientHelper.java:63) at org.jenkinsci.plugins.p4.tasks.AbstractTask.getConnection(AbstractTask.java:78) at org.jenkinsci.plugins.p4.tasks.AbstractTask.setWorkspace(AbstractTask.java:50) at org.jenkinsci.plugins.p4.PerforceScm.checkout(PerforceScm.java:278) at hudson.model.AbstractProject.checkout(AbstractProject.java:1252) at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:615) at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:86) at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:524) at hudson.model.Run.execute(Run.java:1706) at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43) at hudson.model.ResourceController.execute(ResourceController.java:88) at hudson.model.Executor.run(Executor.java:232) Mar 10, 2015 4:02:07 PM org.jenkinsci.plugins.p4.tasks.AbstractTask setWorkspace SEVERE: P4: Unable to setup workspace: com.perforce.p4java.exception.AccessException: Perforce password (P4PASSWD) invalid or unset. Mar 10, 2015 4:02:07 PM hudson.model.Run execute INFO: p4ws-main_build_linux-x64 #5 aborted java.lang.InterruptedException: P4: Unable to setup workspace: com.perforce.p4java.exception.AccessException: Perforce password (P4PASSWD) invalid or unset. at org.jenkinsci.plugins.p4.tasks.AbstractTask.setWorkspace(AbstractTask.java:63) at org.jenkinsci.plugins.p4.PerforceScm.checkout(PerforceScm.java:278) at hudson.model.AbstractProject.checkout(AbstractProject.java:1252) at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:615) at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:86) at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:524) at hudson.model.Run.execute(Run.java:1706) at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43) at hudson.model.ResourceController.execute(ResourceController.java:88) at hudson.model.Executor.run(Executor.java:232) {noformat} Finally, I go back and test the password version, which recreates .p4tickets. Now I use my ticketed credential and it works. Long story short, {{$P4TICKETS}} has to exist before you can use a ticket. That is unexpected and does not conform to normal p4 command-line behavior, e.g: {noformat} $ p4 -p perforce:1666 -P <TICKET-STRING> -u <PERFORCE-USER> login -s User <PERFORCE-USER> ticket expires in 200403 hours 47 minutes. {noformat} This works with or without {{$P4TICKETS}} file, and does not create it.
    via by Russ Tremain,
  • I have configured a global Perforce Ticket Credential with a hard coded Ticket value (tried using P4TICKETS, but was unable to test the connection successfully). I am able to successfully test the connection from the credential configuration page, but when I select the credentials for a project, perforce polling fails with the following error: Perforce Software Polling Log Started on Apr 15, 2015 6:10:00 PM Polling SCM changes on master P4: Polling on: master with:nance-cmtest-prod-jenkins FATAL: SCM polling aborted java.lang.InterruptedException: P4: Unable to setup workspace: com.perforce.p4java.exception.AccessException: Perforce password (P4PASSWD) invalid or unset. at org.jenkinsci.plugins.p4.tasks.AbstractTask.setWorkspace(AbstractTask.java:63) at org.jenkinsci.plugins.p4.PerforceScm.pollWorkspace(PerforceScm.java:223) at org.jenkinsci.plugins.p4.PerforceScm.compareRemoteRevisionWith(PerforceScm.java:179) at hudson.scm.SCM.compareRemoteRevisionWith(SCM.java:380) at hudson.scm.SCM.poll(SCM.java:397) at hudson.model.AbstractProject.pollWithWorkspace(AbstractProject.java:1467) at hudson.model.AbstractProject._poll(AbstractProject.java:1438) at hudson.model.AbstractProject.poll(AbstractProject.java:1349) at hudson.triggers.SCMTrigger$Runner.runPolling(SCMTrigger.java:510) at hudson.triggers.SCMTrigger$Runner.run(SCMTrigger.java:539) at hudson.util.SequentialExecutionQueue$QueueEntry.run(SequentialExecutionQueue.java:118) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) Done. Took 35 ms No changes I wouldn't expect for it to be trying to use P4PASSWD, and am wondering if this is a misconfiguration or if something is broken.
    via by Greg Nance,
  • I was attempting to publish assets as a post build action in one of my jobs and didn't realise the perforce server that it would publish to wasn't online. The error I got was not helpful, but a Null Pointer instead: {code:java} ERROR: Publisher 'Perforce: Publish assets' aborted due to exception: java.lang.InterruptedException: P4: Unable to setup workspace: java.lang.NullPointerException at org.jenkinsci.plugins.p4.tasks.AbstractTask.setWorkspace(AbstractTask.java:63) at org.jenkinsci.plugins.p4.asset.AssetNotifier.perform(AssetNotifier.java:87) at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20) at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:779) at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:726) at hudson.model.Build$BuildExecution.post2(Build.java:185) at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:671) at hudson.model.Run.execute(Run.java:1769) at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43) at hudson.model.ResourceController.execute(ResourceController.java:98) at hudson.model.Executor.run(Executor.java:374) {code} I'm assuming there was a proper error message at some point about not being able to connect to the perforce server but that was lost by a Null Pointer which sent me on a wild goose chase for a while until I realised what was really going on. Looking at the code in AbstractTask.java I'm assuming {{ClientHelper p4 = getConnection();}} doesn't error if it can't get a connection, it just returns null and the code below doesn't check for that first? The catch block does nothing to show the full stack of Exception e, so it's hard to say for sure where the Null Pointer comes from, but that's my guess anyway. Ideally it would throw a {{RuntimeException(err, e);}} instead of the {{InterruptedException(err);}}?
    via by Nick Palmer,
  • Experiencing some weird behavior re: tickets and p4 jenkins plugin. BEFORE: {noformat} [~jenkins] root# rm .p4tickets [~jenkins] root# ls -al {noformat} NOW GO TO JENKINS, and test password credential AFTER: {noformat} [~jenkins] root# ls -al total 8 drwxr-xr-x+ 4 jenkins staff 136 Mar 10 15:55 ./ drwxr-xr-x 9 root admin 306 Mar 10 15:31 ../ -r-------- 1 root staff 68 Mar 10 15:55 .p4tickets {noformat} So the act of testing the password credential adds a ticket file. Next, I remove .p4tickets and test my ticketed credential. Does not create {{.p4tickets}} and test succeeds. Now I go to a job that depends on ticketed credential I just tested, and run it. Job fails with: {noformat} SEVERE: P4: Unable to use Workspace: com.perforce.p4java.exception.AccessException: Perforce password (P4PASSWD) invalid or unset. com.perforce.p4java.exception.AccessException: Perforce password (P4PASSWD) invalid or unset. at com.perforce.p4java.impl.mapbased.server.Server.handleErrorStr(Server.java:4987) at com.perforce.p4java.impl.mapbased.server.Server.getClient(Server.java:2433) at org.jenkinsci.plugins.p4.client.ClientHelper.clientLogin(ClientHelper.java:69) at org.jenkinsci.plugins.p4.client.ClientHelper.<init>(ClientHelper.java:63) at org.jenkinsci.plugins.p4.tasks.AbstractTask.getConnection(AbstractTask.java:78) at org.jenkinsci.plugins.p4.tasks.AbstractTask.setWorkspace(AbstractTask.java:50) at org.jenkinsci.plugins.p4.PerforceScm.checkout(PerforceScm.java:278) at hudson.model.AbstractProject.checkout(AbstractProject.java:1252) at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:615) at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:86) at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:524) at hudson.model.Run.execute(Run.java:1706) at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43) at hudson.model.ResourceController.execute(ResourceController.java:88) at hudson.model.Executor.run(Executor.java:232) Mar 10, 2015 4:02:07 PM org.jenkinsci.plugins.p4.tasks.AbstractTask setWorkspace SEVERE: P4: Unable to setup workspace: com.perforce.p4java.exception.AccessException: Perforce password (P4PASSWD) invalid or unset. Mar 10, 2015 4:02:07 PM hudson.model.Run execute INFO: p4ws-main_build_linux-x64 #5 aborted java.lang.InterruptedException: P4: Unable to setup workspace: com.perforce.p4java.exception.AccessException: Perforce password (P4PASSWD) invalid or unset. at org.jenkinsci.plugins.p4.tasks.AbstractTask.setWorkspace(AbstractTask.java:63) at org.jenkinsci.plugins.p4.PerforceScm.checkout(PerforceScm.java:278) at hudson.model.AbstractProject.checkout(AbstractProject.java:1252) at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:615) at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:86) at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:524) at hudson.model.Run.execute(Run.java:1706) at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43) at hudson.model.ResourceController.execute(ResourceController.java:88) at hudson.model.Executor.run(Executor.java:232) {noformat} Finally, I go back and test the password version, which recreates .p4tickets. Now I use my ticketed credential and it works. Long story short, {{$P4TICKETS}} has to exist before you can use a ticket. That is unexpected and does not conform to normal p4 command-line behavior, e.g: {noformat} $ p4 -p perforce:1666 -P <TICKET-STRING> -u <PERFORCE-USER> login -s User <PERFORCE-USER> ticket expires in 200403 hours 47 minutes. {noformat} This works with or without {{$P4TICKETS}} file, and does not create it.
    via by Russ Tremain,
  • I have configured a global Perforce Ticket Credential with a hard coded Ticket value (tried using P4TICKETS, but was unable to test the connection successfully). I am able to successfully test the connection from the credential configuration page, but when I select the credentials for a project, perforce polling fails with the following error: Perforce Software Polling Log Started on Apr 15, 2015 6:10:00 PM Polling SCM changes on master P4: Polling on: master with:nance-cmtest-prod-jenkins FATAL: SCM polling aborted java.lang.InterruptedException: P4: Unable to setup workspace: com.perforce.p4java.exception.AccessException: Perforce password (P4PASSWD) invalid or unset. at org.jenkinsci.plugins.p4.tasks.AbstractTask.setWorkspace(AbstractTask.java:63) at org.jenkinsci.plugins.p4.PerforceScm.pollWorkspace(PerforceScm.java:223) at org.jenkinsci.plugins.p4.PerforceScm.compareRemoteRevisionWith(PerforceScm.java:179) at hudson.scm.SCM.compareRemoteRevisionWith(SCM.java:380) at hudson.scm.SCM.poll(SCM.java:397) at hudson.model.AbstractProject.pollWithWorkspace(AbstractProject.java:1467) at hudson.model.AbstractProject._poll(AbstractProject.java:1438) at hudson.model.AbstractProject.poll(AbstractProject.java:1349) at hudson.triggers.SCMTrigger$Runner.runPolling(SCMTrigger.java:510) at hudson.triggers.SCMTrigger$Runner.run(SCMTrigger.java:539) at hudson.util.SequentialExecutionQueue$QueueEntry.run(SequentialExecutionQueue.java:118) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) Done. Took 35 ms No changes I wouldn't expect for it to be trying to use P4PASSWD, and am wondering if this is a misconfiguration or if something is broken.
    via by Greg Nance,
    • java.lang.InterruptedException: P4: Unable to setup workspace: com.perforce.p4java.exception.RequestException: Error in client specification. Embedded special characters (*, %%, #, @) not allowed in 'C:\Program Files (x86)\Jenkins\jobs\<redacted>\workspace@script'. at org.jenkinsci.plugins.p4.tasks.AbstractTask.setWorkspace(AbstractTask.java:63) at org.jenkinsci.plugins.p4.PerforceScm.checkout(PerforceScm.java:277) at org.jenkinsci.plugins.workflow.steps.scm.SCMStep.checkout(SCMStep.java:106) at org.jenkinsci.plugins.workflow.cps.CpsScmFlowDefinition.create(CpsScmFlowDefinition.java:108) at org.jenkinsci.plugins.workflow.cps.CpsScmFlowDefinition.create(CpsScmFlowDefinition.java:57) at org.jenkinsci.plugins.workflow.job.WorkflowRun.run(WorkflowRun.java:181) at hudson.model.ResourceController.execute(ResourceController.java:98) at hudson.model.Executor.run(Executor.java:374)
    No Bugmate found.