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

CopyArtifact plugin triggers intermittent remoting failures

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Blocker Blocker
    • copyartifact-plugin, core
    • None
    • Linux (RHEL 5.5), Hudson 1.380, Copy Artifact 1.10

      We are using the CopyArtifact plugin to distribute a ~7MB tar.gz file from a single polling job to several downstream build/test jobs. Since Hudson 1.377, copying the artifact to the build/test job randomly throws one of two exceptions (the first is reported in JENKINS-7581):

      ERROR: Failed to copy artifacts from job-poll with filter: workspace.tar.gz
      hudson.util.IOException2: hudson.util.IOException2: Not in GZIP format
      stream=7c9e6f6bf0e618[...snip...]
      	at hudson.FilePath.copyRecursiveTo(FilePath.java:1474)
      	at hudson.FilePath.copyRecursiveTo(FilePath.java:1399)
      	[...snip...]
      

      and the following (new in 1.380):

      Deleting old artifacts from #21
      FATAL: null
      java.lang.AssertionError
      	at hudson.remoting.PipeWindow$Real.decrease(PipeWindow.java:160)
      	at hudson.remoting.ProxyOutputStream._write(ProxyOutputStream.java:124)
      	at hudson.remoting.ProxyOutputStream.write(ProxyOutputStream.java:103)
      	at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65)
      	at java.io.BufferedOutputStream.write(BufferedOutputStream.java:109)
      	at java.util.zip.DeflaterOutputStream.deflate(DeflaterOutputStream.java:161)
      	at java.util.zip.DeflaterOutputStream.write(DeflaterOutputStream.java:118)
      	at java.util.zip.GZIPOutputStream.write(GZIPOutputStream.java:72)
      	at java.io.BufferedOutputStream.write(BufferedOutputStream.java:105)
      	at org.apache.tools.tar.TarBuffer.writeBlock(TarBuffer.java:410)
      	at org.apache.tools.tar.TarBuffer.writeRecord(TarBuffer.java:388)
      	at hudson.org.apache.tools.tar.TarOutputStream.write(TarOutputStream.java:337)
      	at hudson.util.io.TarArchiver.visit(TarArchiver.java:103)
      	at hudson.util.DirScanner$Glob.scan(DirScanner.java:104)
      	at hudson.FilePath.writeToTar(FilePath.java:1543)
      	at hudson.FilePath.copyRecursiveTo(FilePath.java:1470)
      	at hudson.FilePath.copyRecursiveTo(FilePath.java:1399)
      	at hudson.plugins.copyartifact.CopyArtifact.perform(CopyArtifact.java:172)
      	at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19)
      	at hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:601)
      	at hudson.model.Build$RunnerImpl.build(Build.java:174)
      	at hudson.model.Build$RunnerImpl.doRun(Build.java:138)
      	at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:416)
      	at hudson.model.Run.run(Run.java:1280)
      	at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
      	at hudson.model.ResourceController.execute(ResourceController.java:88)
      	at hudson.model.Executor.run(Executor.java:140)
      

      These exceptions appear to occur randomly, and happen approximately 50% of the time.

          [JENKINS-7745] CopyArtifact plugin triggers intermittent remoting failures

          jsiirola created issue -
          jsiirola made changes -
          Description Original: We are using the CopyArtifact plugin to distribute a ~7MB tar.gz file from a single polling job to several downstream build/test jobs. Since Hudson 1.377, copying the artifact to the build/test job randomly throws one of two exceptions (the first is reported in [JENKINS-7581]):

          {noformat}
          ERROR: Failed to copy artifacts from ichos-poll with filter: workspace.tar.gz
          hudson.util.IOException2: hudson.util.IOException2: Not in GZIP format
          stream=7c9e6f6bf0e618[...snip...]
          at hudson.FilePath.copyRecursiveTo(FilePath.java:1474)
          at hudson.FilePath.copyRecursiveTo(FilePath.java:1399)
          [...snip...]
          {noformat}

          and the following (new in 1.380):

          {noformat}
          Deleting old artifacts from #21
          FATAL: null
          java.lang.AssertionError
          at hudson.remoting.PipeWindow$Real.decrease(PipeWindow.java:160)
          at hudson.remoting.ProxyOutputStream._write(ProxyOutputStream.java:124)
          at hudson.remoting.ProxyOutputStream.write(ProxyOutputStream.java:103)
          at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65)
          at java.io.BufferedOutputStream.write(BufferedOutputStream.java:109)
          at java.util.zip.DeflaterOutputStream.deflate(DeflaterOutputStream.java:161)
          at java.util.zip.DeflaterOutputStream.write(DeflaterOutputStream.java:118)
          at java.util.zip.GZIPOutputStream.write(GZIPOutputStream.java:72)
          at java.io.BufferedOutputStream.write(BufferedOutputStream.java:105)
          at org.apache.tools.tar.TarBuffer.writeBlock(TarBuffer.java:410)
          at org.apache.tools.tar.TarBuffer.writeRecord(TarBuffer.java:388)
          at hudson.org.apache.tools.tar.TarOutputStream.write(TarOutputStream.java:337)
          at hudson.util.io.TarArchiver.visit(TarArchiver.java:103)
          at hudson.util.DirScanner$Glob.scan(DirScanner.java:104)
          at hudson.FilePath.writeToTar(FilePath.java:1543)
          at hudson.FilePath.copyRecursiveTo(FilePath.java:1470)
          at hudson.FilePath.copyRecursiveTo(FilePath.java:1399)
          at hudson.plugins.copyartifact.CopyArtifact.perform(CopyArtifact.java:172)
          at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19)
          at hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:601)
          at hudson.model.Build$RunnerImpl.build(Build.java:174)
          at hudson.model.Build$RunnerImpl.doRun(Build.java:138)
          at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:416)
          at hudson.model.Run.run(Run.java:1280)
          at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
          at hudson.model.ResourceController.execute(ResourceController.java:88)
          at hudson.model.Executor.run(Executor.java:140)
          {noformat}

          These exceptions appear to occur randomly, and happen approximately 50% of the time.
          New: We are using the CopyArtifact plugin to distribute a ~7MB tar.gz file from a single polling job to several downstream build/test jobs. Since Hudson 1.377, copying the artifact to the build/test job randomly throws one of two exceptions (the first is reported in [JENKINS-7581]):

          {noformat}
          ERROR: Failed to copy artifacts from job-poll with filter: workspace.tar.gz
          hudson.util.IOException2: hudson.util.IOException2: Not in GZIP format
          stream=7c9e6f6bf0e618[...snip...]
          at hudson.FilePath.copyRecursiveTo(FilePath.java:1474)
          at hudson.FilePath.copyRecursiveTo(FilePath.java:1399)
          [...snip...]
          {noformat}

          and the following (new in 1.380):

          {noformat}
          Deleting old artifacts from #21
          FATAL: null
          java.lang.AssertionError
          at hudson.remoting.PipeWindow$Real.decrease(PipeWindow.java:160)
          at hudson.remoting.ProxyOutputStream._write(ProxyOutputStream.java:124)
          at hudson.remoting.ProxyOutputStream.write(ProxyOutputStream.java:103)
          at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65)
          at java.io.BufferedOutputStream.write(BufferedOutputStream.java:109)
          at java.util.zip.DeflaterOutputStream.deflate(DeflaterOutputStream.java:161)
          at java.util.zip.DeflaterOutputStream.write(DeflaterOutputStream.java:118)
          at java.util.zip.GZIPOutputStream.write(GZIPOutputStream.java:72)
          at java.io.BufferedOutputStream.write(BufferedOutputStream.java:105)
          at org.apache.tools.tar.TarBuffer.writeBlock(TarBuffer.java:410)
          at org.apache.tools.tar.TarBuffer.writeRecord(TarBuffer.java:388)
          at hudson.org.apache.tools.tar.TarOutputStream.write(TarOutputStream.java:337)
          at hudson.util.io.TarArchiver.visit(TarArchiver.java:103)
          at hudson.util.DirScanner$Glob.scan(DirScanner.java:104)
          at hudson.FilePath.writeToTar(FilePath.java:1543)
          at hudson.FilePath.copyRecursiveTo(FilePath.java:1470)
          at hudson.FilePath.copyRecursiveTo(FilePath.java:1399)
          at hudson.plugins.copyartifact.CopyArtifact.perform(CopyArtifact.java:172)
          at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19)
          at hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:601)
          at hudson.model.Build$RunnerImpl.build(Build.java:174)
          at hudson.model.Build$RunnerImpl.doRun(Build.java:138)
          at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:416)
          at hudson.model.Run.run(Run.java:1280)
          at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
          at hudson.model.ResourceController.execute(ResourceController.java:88)
          at hudson.model.Executor.run(Executor.java:140)
          {noformat}

          These exceptions appear to occur randomly, and happen approximately 50% of the time.

          lynggaard added a comment -

          I am getting it during archive
          [HUDSON] Archiving site from /xdata/hudson/.hudson/jobs/Build_Foundation/workspace/datamodel/target/site to /xdata/hudson/.hudson/jobs/Build_Foundation/site/datamodel
          [INFO] ------------------------------------------------------------------------
          [ERROR] FATAL ERROR
          [INFO] ------------------------------------------------------------------------
          [INFO] null
          [INFO] ------------------------------------------------------------------------
          [INFO] Trace
          java.lang.AssertionError
          at hudson.remoting.PipeWindow$Real.decrease(PipeWindow.java:160)
          at hudson.remoting.ProxyOutputStream._write(ProxyOutputStream.java:124)
          at hudson.remoting.ProxyOutputStream.write(ProxyOutputStream.java:103)
          at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65)
          at java.io.BufferedOutputStream.write(BufferedOutputStream.java:109)
          at java.util.zip.DeflaterOutputStream.deflate(DeflaterOutputStream.java:161)
          at java.util.zip.DeflaterOutputStream.write(DeflaterOutputStream.java:118)
          at java.util.zip.GZIPOutputStream.write(GZIPOutputStream.java:72)
          at java.io.BufferedOutputStream.write(BufferedOutputStream.java:105)
          at org.apache.tools.tar.TarBuffer.writeBlock(TarBuffer.java:410)
          at org.apache.tools.tar.TarBuffer.writeRecord(TarBuffer.java:388)
          at hudson.org.apache.tools.tar.TarOutputStream.write(TarOutputStream.java:337)
          at hudson.util.io.TarArchiver.visit(TarArchiver.java:103)
          at hudson.util.DirScanner$Glob.scan(DirScanner.java:104)
          at hudson.FilePath.writeToTar(FilePath.java:1543)
          at hudson.FilePath.copyRecursiveTo(FilePath.java:1470)
          at hudson.FilePath.copyRecursiveTo(FilePath.java:1399)
          at hudson.maven.reporters.MavenSiteArchiver.postExecute(MavenSiteArchiver.java:81)
          at hudson.maven.MavenModuleSetBuild$Builder.postExecute(MavenModuleSetBuild.java:772)
          at hudson.maven.MavenBuilder$Adapter.postExecute(MavenBuilder.java:300)
          at hudson.maven.agent.PluginManagerInterceptor$1MojoIntercepterImpl.callPost(PluginManagerInterceptor.java:170)
          at hudson.maven.agent.PluginManagerInterceptor.executeMojo(PluginManagerInterceptor.java:183)
          at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694)
          at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:556)
          at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:535)
          at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:387)
          at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:348)
          at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:180)
          at org.apache.maven.lifecycle.LifecycleExecutorInterceptor.execute(LifecycleExecutorInterceptor.java:65)
          at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328)
          at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138)
          at org.apache.maven.cli.MavenCli.main(MavenCli.java:362)
          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
          at java.lang.reflect.Method.invoke(Method.java:597)
          at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
          at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
          at hudson.maven.agent.Main.launch(Main.java:165)
          at hudson.maven.MavenBuilder.call(MavenBuilder.java:165)
          at hudson.maven.MavenModuleSetBuild$Builder.call(MavenModuleSetBuild.java:694)
          at hudson.maven.MavenModuleSetBuild$Builder.call(MavenModuleSetBuild.java:638)
          at hudson.remoting.UserRequest.perform(UserRequest.java:114)
          at hudson.remoting.UserRequest.perform(UserRequest.java:48)
          at hudson.remoting.Request$2.run(Request.java:270)
          at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
          at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
          at java.util.concurrent.FutureTask.run(FutureTask.java:138)
          at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
          at java.lang.Thread.run(Thread.java:619)

          lynggaard added a comment - I am getting it during archive [HUDSON] Archiving site from /xdata/hudson/.hudson/jobs/Build_Foundation/workspace/datamodel/target/site to /xdata/hudson/.hudson/jobs/Build_Foundation/site/datamodel [INFO] ------------------------------------------------------------------------ [ERROR] FATAL ERROR [INFO] ------------------------------------------------------------------------ [INFO] null [INFO] ------------------------------------------------------------------------ [INFO] Trace java.lang.AssertionError at hudson.remoting.PipeWindow$Real.decrease(PipeWindow.java:160) at hudson.remoting.ProxyOutputStream._write(ProxyOutputStream.java:124) at hudson.remoting.ProxyOutputStream.write(ProxyOutputStream.java:103) at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:65) at java.io.BufferedOutputStream.write(BufferedOutputStream.java:109) at java.util.zip.DeflaterOutputStream.deflate(DeflaterOutputStream.java:161) at java.util.zip.DeflaterOutputStream.write(DeflaterOutputStream.java:118) at java.util.zip.GZIPOutputStream.write(GZIPOutputStream.java:72) at java.io.BufferedOutputStream.write(BufferedOutputStream.java:105) at org.apache.tools.tar.TarBuffer.writeBlock(TarBuffer.java:410) at org.apache.tools.tar.TarBuffer.writeRecord(TarBuffer.java:388) at hudson.org.apache.tools.tar.TarOutputStream.write(TarOutputStream.java:337) at hudson.util.io.TarArchiver.visit(TarArchiver.java:103) at hudson.util.DirScanner$Glob.scan(DirScanner.java:104) at hudson.FilePath.writeToTar(FilePath.java:1543) at hudson.FilePath.copyRecursiveTo(FilePath.java:1470) at hudson.FilePath.copyRecursiveTo(FilePath.java:1399) at hudson.maven.reporters.MavenSiteArchiver.postExecute(MavenSiteArchiver.java:81) at hudson.maven.MavenModuleSetBuild$Builder.postExecute(MavenModuleSetBuild.java:772) at hudson.maven.MavenBuilder$Adapter.postExecute(MavenBuilder.java:300) at hudson.maven.agent.PluginManagerInterceptor$1MojoIntercepterImpl.callPost(PluginManagerInterceptor.java:170) at hudson.maven.agent.PluginManagerInterceptor.executeMojo(PluginManagerInterceptor.java:183) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:694) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:556) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:535) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:387) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:348) at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:180) at org.apache.maven.lifecycle.LifecycleExecutorInterceptor.execute(LifecycleExecutorInterceptor.java:65) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138) at org.apache.maven.cli.MavenCli.main(MavenCli.java:362) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) at hudson.maven.agent.Main.launch(Main.java:165) at hudson.maven.MavenBuilder.call(MavenBuilder.java:165) at hudson.maven.MavenModuleSetBuild$Builder.call(MavenModuleSetBuild.java:694) at hudson.maven.MavenModuleSetBuild$Builder.call(MavenModuleSetBuild.java:638) at hudson.remoting.UserRequest.perform(UserRequest.java:114) at hudson.remoting.UserRequest.perform(UserRequest.java:48) at hudson.remoting.Request$2.run(Request.java:270) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:619)

          Alan Harder added a comment -

          kohsuke, can you take a look at this?

          Alan Harder added a comment - kohsuke, can you take a look at this?
          Alan Harder made changes -
          Assignee Original: Alan Harder [ mindless ] New: Kohsuke Kawaguchi [ kohsuke ]
          Alan Harder made changes -
          Link New: This issue is related to JENKINS-7581 [ JENKINS-7581 ]

          Code changed in hudson
          User: : kohsuke
          Path:
          trunk/hudson/main/remoting/src/main/java/hudson/remoting/PipeWindow.java
          trunk/www/changelog.html
          http://jenkins-ci.org/commit/36558
          Log:
          [FIXED JENKINS-7745] suppressing the assertion so that the processing won't die.

          SCM/JIRA link daemon added a comment - Code changed in hudson User: : kohsuke Path: trunk/hudson/main/remoting/src/main/java/hudson/remoting/PipeWindow.java trunk/www/changelog.html http://jenkins-ci.org/commit/36558 Log: [FIXED JENKINS-7745] suppressing the assertion so that the processing won't die.
          SCM/JIRA link daemon made changes -
          Resolution New: Fixed [ 1 ]
          Status Original: Open [ 1 ] New: Resolved [ 5 ]
          Kohsuke Kawaguchi made changes -
          Link New: This issue is duplicated by JENKINS-7783 [ JENKINS-7783 ]
          Kohsuke Kawaguchi made changes -
          Link New: This issue is blocking JENKINS-7784 [ JENKINS-7784 ]

            kohsuke Kohsuke Kawaguchi
            jsiirola jsiirola
            Votes:
            53 Vote for this issue
            Watchers:
            47 Start watching this issue

              Created:
              Updated:
              Resolved: