after updating from 1.428 to 1.429 or 1.430 I experienced issues with
the perforce plugin on some remote nodes.
The plugin can't seem to read the output of the "p4" executable.
Errors look like this:
5826655 [Executor #0 for node1 : executing testproject #26] WARN perforce - java.io.IOException
at hudson.remoting.FastPipedInputStream.read(FastPipedInputStream.java:175)
at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:264)
at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:306)
at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:158)
at java.io.InputStreamReader.read(InputStreamReader.java:167)
at java.io.BufferedReader.fill(BufferedReader.java:136)
at java.io.BufferedReader.readLine(BufferedReader.java:299)
at java.io.BufferedReader.readLine(BufferedReader.java:362)
at com.tek42.perforce.parse.AbstractPerforceTemplate.getPerforceResponse(AbstractPerforceTemplate.java:330)
at com.tek42.perforce.parse.AbstractPerforceTemplate.getPerforceResponse(AbstractPerforceTemplate.java:292)
at com.tek42.perforce.parse.Workspaces.getWorkspace(Workspaces.java:54)
at hudson.plugins.perforce.PerforceSCM.getPerforceWorkspace(PerforceSCM.java:1179)
at hudson.plugins.perforce.PerforceSCM.checkout(PerforceSCM.java:593)
at hudson.model.AbstractProject.checkout(AbstractProject.java:1193)
at hudson.model.AbstractBuild$AbstractRunner.checkout(AbstractBuild.java:566)
at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:454)
at hudson.model.Run.run(Run.java:1376)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:230)
Or similar.
I debugged the problem and found that jenkins is waiting forever in method:
com.tek42.perforce.parse.AbstractPerforceTemplate.getPerforceResponse(String[] cmd, ResponseFilter filter)
when trying to read from the BufferedReader
This is the line:
https://github.com/jenkinsci/perforce-plugin/blob/master/src/main/java/com/tek42/perforce/parse/AbstractPerforceTemplate.java#L330
I suspect the problem is the fix for https://issues.jenkins-ci.org/browse/JENKINS-8856
which dups stdin/out on OS-level.
Best regards,
Felix
The information included in this e-mail and any files transmitted with it is strictly confidential and may be privileged or otherwise protected from disclosure. If you are not the intended recipient, please notify the sender immediately by e-mail and delete this e-mail as well as any attachment from your system. If you are not the intended recipient you are not authorized to use and/or copy this message and/or attachment and/or disclose the contents to any other person.
Can you please file an issue for this on issues.jenkins-ci.org, and include as much detail as possible? We'll need things like master and slave Os and java versions.
Thanks!