Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-22807

Copy process never finishes

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: Critical Critical
    • copy-to-slave-plugin
    • None
    • org.jenkins-ci.plugins:copy-to-slave:1.4.3
      Jenkins 1.561
      Debian Wheezy

      After updating Jenkins to 1.561 randomly the copy process never finishes. Sometimes it works, sometimes not.
      It doesn't matter if the build before crashed or was okay and we can't really say, how to reproduce. But at our side it happens every 2nd or 3rd time.

      Our setup is:
      Master (Jenkins) and slave (Jenkins node) are on different servers.
      When we start the job, we want to copy the files from the workspace on master to the workspace on the slave.

      The output in the console is:

       
      [EnvInject] - Loading node environment variables.
      Building remotely on Jenkins-Worker-01 (Remote-Worker) in workspace /var/lib/jenkins/jobs/Master-Branch-Test-Checkout/workspace
      [copy-to-slave] Copying '*.*,**', excluding nothing, from 'file:/var/lib/jenkins/jobs/Master-Branch-Test-Checkout/workspace/' on the master to 'file:/var/lib/jenkins/jobs/Master-Branch-Test-Checkout/workspace/' on 'Jenkins-Worker-01'.
      

      After that nothing happens. The job won't finish until I cancel it. No errors or similar. Syslog seems clean. This blocks the worker until I cancel it, so its a critical error. For testing purposes we let this run for 20h on one worker and nothing happend.

      If I cancel the job I get the following output:

       
      FATAL: null
      java.io.InterruptedIOException
      	at hudson.remoting.ProxyOutputStream._write(ProxyOutputStream.java:160)
      	at hudson.remoting.ProxyOutputStream.write(ProxyOutputStream.java:109)
      	at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
      	at java.io.BufferedOutputStream.write(BufferedOutputStream.java:126)
      	at com.jcraft.jzlib.DeflaterOutputStream.deflate(DeflaterOutputStream.java:144)
      	at com.jcraft.jzlib.DeflaterOutputStream.write(DeflaterOutputStream.java:102)
      	at java.io.BufferedOutputStream.write(BufferedOutputStream.java:122)
      	at org.apache.tools.tar.TarBuffer.writeBlock(TarBuffer.java:410)
      	at org.apache.tools.tar.TarBuffer.writeRecord(TarBuffer.java:351)
      	at hudson.org.apache.tools.tar.TarOutputStream.writeEOFRecord(TarOutputStream.java:356)
      	at hudson.org.apache.tools.tar.TarOutputStream.finish(TarOutputStream.java:137)
      	at hudson.org.apache.tools.tar.TarOutputStream.close(TarOutputStream.java:149)
      	at hudson.util.io.TarArchiver.close(TarArchiver.java:125)
      	at com.michelin.cio.hudson.plugins.copytoslave.MyFilePath.writeToTar(MyFilePath.java:230)
      	at com.michelin.cio.hudson.plugins.copytoslave.MyFilePath.copyRecursiveTo(MyFilePath.java:143)
      	at com.michelin.cio.hudson.plugins.copytoslave.CopyToSlaveBuildWrapper.setUp(CopyToSlaveBuildWrapper.java:133)
      	at hudson.model.Build$BuildExecution.doRun(Build.java:153)
      	at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:518)
      	at hudson.model.Run.execute(Run.java:1709)
      	at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
      	at hudson.model.ResourceController.execute(ResourceController.java:88)
      	at hudson.model.Executor.run(Executor.java:231)
      Caused by: java.lang.InterruptedException
      	at java.lang.Object.wait(Native Method)
      	at java.lang.Object.wait(Object.java:503)
      	at hudson.remoting.PipeWindow$Real.get(PipeWindow.java:209)
      	at hudson.remoting.ProxyOutputStream._write(ProxyOutputStream.java:141)
      	... 21 more
      

      When it works the following is the next output: (just to show, that it is not the next command which is holding it)

       
          [EnvInject] - Executing scripts and injecting environment variables after the SCM step.
          [EnvInject] - Injecting as environment variables the properties content JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
          [EnvInject] - Variables injected successfully.
      

      I really would like to provide more details, but I'm a little bit stuck and don't know what else I could provide. If you need something more I try to provide it.

            svvivek Vivekanand SV
            kfritsche Karl Fritsche
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: