Occassionally, copyartifact will fail to copy the proper artifacts, throw and exception, and terminate the build. Suspected cause is concurrent builds attempting to retrieve the same artifacts at the same time. Our setup performs a build, then archives the output to artifacts. Several hundred test jobs will pull down those artifacts to run builds. During a typical build-and-test run, about one third of the test builds will fail trying to retrieve the artifacts. Copying a sample failure from the log files; all failures origina in the same method: FingerprintingCopyMethod.copyOne():

      ERROR: Failed to copy artifacts from TIER_1_BUILD_SMOKE with filter: source_settings.ini
      09:08:54 hudson.util.IOException2: Failed to copy D:\Jenkins\.jenkins\jobs\TIER_1_BUILD_SMOKE\builds\2012-04-28_09-07-27\archive\source_settings.ini to E:\JenkinsSlave\workspace\BUILD_WINDOWS_ALL\source_settings.ini
      09:08:54 at hudson.plugins.copyartifact.FingerprintingCopyMethod.copyOne(FingerprintingCopyMethod.java:91)
      09:08:54 at hudson.plugins.copyartifact.FingerprintingCopyMethod.copyAll(FingerprintingCopyMethod.java:63)
      09:08:54 at hudson.plugins.copyartifact.CopyArtifact.perform(CopyArtifact.java:243)
      09:08:54 at hudson.plugins.copyartifact.CopyArtifact.perform(CopyArtifact.java:215)
      09:08:54 at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19)
      09:08:54 at hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:705)
      09:08:54 at hudson.model.Build$RunnerImpl.build(Build.java:178)
      09:08:54 at hudson.model.Build$RunnerImpl.doRun(Build.java:139)
      09:08:54 at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:475)
      09:08:54 at hudson.model.Run.run(Run.java:1434)
      09:08:54 at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
      09:08:54 at hudson.model.ResourceController.execute(ResourceController.java:88)
      09:08:54 at hudson.model.Executor.run(Executor.java:239)

          [JENKINS-13638] Copy artifacts occasionally fail

          Alan Harder added a comment -

          Please include the full error stack trace if it was logged.. there should be a "Caused by:" with further stack trace following what you posted.

          Alan Harder added a comment - Please include the full error stack trace if it was logged.. there should be a "Caused by:" with further stack trace following what you posted.

          Jason Swager added a comment -

          Here is the additional error information:

          09:08:54 ERROR: Failed to copy artifacts from TIER_1_BUILD_SMOKE with filter: source_settings.ini
          09:08:54 hudson.util.IOException2: Failed to copy D:\Jenkins\.jenkins\jobs\TIER_1_BUILD_SMOKE\builds\2012-04-28_09-07-27\archive\source_settings.ini to E:\JenkinsSlave\workspace\BUILD_WINDOWS_ALL\source_settings.ini
          09:08:54 at hudson.plugins.copyartifact.FingerprintingCopyMethod.copyOne(FingerprintingCopyMethod.java:91)
          09:08:54 at hudson.plugins.copyartifact.FingerprintingCopyMethod.copyAll(FingerprintingCopyMethod.java:63)
          09:08:54 at hudson.plugins.copyartifact.CopyArtifact.perform(CopyArtifact.java:243)
          09:08:54 at hudson.plugins.copyartifact.CopyArtifact.perform(CopyArtifact.java:215)
          09:08:54 at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19)
          09:08:54 at hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:705)
          09:08:54 at hudson.model.Build$RunnerImpl.build(Build.java:178)
          09:08:54 at hudson.model.Build$RunnerImpl.doRun(Build.java:139)
          09:08:54 at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:475)
          09:08:54 at hudson.model.Run.run(Run.java:1434)
          09:08:54 at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
          09:08:54 at hudson.model.ResourceController.execute(ResourceController.java:88)
          09:08:54 at hudson.model.Executor.run(Executor.java:239)
          09:08:54 Caused by: hudson.util.IOException2: remote file operation failed: E:\JenkinsSlave\workspace\BUILD_WINDOWS_ALL\source_settings.ini at hudson.remoting.Channel@2d4712:Build_Windows_RAM_A
          09:08:54 at hudson.FilePath.act(FilePath.java:828)
          09:08:54 at hudson.FilePath.act(FilePath.java:814)
          09:08:54 at hudson.FilePath.touch(FilePath.java:1160)
          09:08:54 at hudson.plugins.copyartifact.FingerprintingCopyMethod.copyOne(FingerprintingCopyMethod.java:79)
          09:08:54 ... 12 more
          09:08:54 Caused by: java.io.IOException: Failed to set the timestamp of E:\JenkinsSlave\workspace\BUILD_WINDOWS_ALL\source_settings.ini to 1335629249000
          09:08:54 at hudson.FilePath$19.invoke(FilePath.java:1166)
          09:08:54 at hudson.FilePath$19.invoke(FilePath.java:1160)
          09:08:54 at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2154)
          09:08:54 at hudson.remoting.UserRequest.perform(UserRequest.java:118)
          09:08:54 at hudson.remoting.UserRequest.perform(UserRequest.java:48)
          09:08:54 at hudson.remoting.Request$2.run(Request.java:287)
          09:08:54 at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
          09:08:54 at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
          09:08:54 at java.util.concurrent.FutureTask.run(Unknown Source)
          09:08:54 at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
          09:08:54 at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
          09:08:54 at hudson.remoting.Engine$1$1.run(Engine.java:60)
          09:08:54 at java.lang.Thread.run(Unknown Source)
          09:08:54 Build step 'Copy artifacts from another project' marked build as failure

          Jason Swager added a comment - Here is the additional error information: 09:08:54 ERROR: Failed to copy artifacts from TIER_1_BUILD_SMOKE with filter: source_settings.ini 09:08:54 hudson.util.IOException2: Failed to copy D:\Jenkins\.jenkins\jobs\TIER_1_BUILD_SMOKE\builds\2012-04-28_09-07-27\archive\source_settings.ini to E:\JenkinsSlave\workspace\BUILD_WINDOWS_ALL\source_settings.ini 09:08:54 at hudson.plugins.copyartifact.FingerprintingCopyMethod.copyOne(FingerprintingCopyMethod.java:91) 09:08:54 at hudson.plugins.copyartifact.FingerprintingCopyMethod.copyAll(FingerprintingCopyMethod.java:63) 09:08:54 at hudson.plugins.copyartifact.CopyArtifact.perform(CopyArtifact.java:243) 09:08:54 at hudson.plugins.copyartifact.CopyArtifact.perform(CopyArtifact.java:215) 09:08:54 at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19) 09:08:54 at hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:705) 09:08:54 at hudson.model.Build$RunnerImpl.build(Build.java:178) 09:08:54 at hudson.model.Build$RunnerImpl.doRun(Build.java:139) 09:08:54 at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:475) 09:08:54 at hudson.model.Run.run(Run.java:1434) 09:08:54 at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46) 09:08:54 at hudson.model.ResourceController.execute(ResourceController.java:88) 09:08:54 at hudson.model.Executor.run(Executor.java:239) 09:08:54 Caused by: hudson.util.IOException2: remote file operation failed: E:\JenkinsSlave\workspace\BUILD_WINDOWS_ALL\source_settings.ini at hudson.remoting.Channel@2d4712:Build_Windows_RAM_A 09:08:54 at hudson.FilePath.act(FilePath.java:828) 09:08:54 at hudson.FilePath.act(FilePath.java:814) 09:08:54 at hudson.FilePath.touch(FilePath.java:1160) 09:08:54 at hudson.plugins.copyartifact.FingerprintingCopyMethod.copyOne(FingerprintingCopyMethod.java:79) 09:08:54 ... 12 more 09:08:54 Caused by: java.io.IOException: Failed to set the timestamp of E:\JenkinsSlave\workspace\BUILD_WINDOWS_ALL\source_settings.ini to 1335629249000 09:08:54 at hudson.FilePath$19.invoke(FilePath.java:1166) 09:08:54 at hudson.FilePath$19.invoke(FilePath.java:1160) 09:08:54 at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2154) 09:08:54 at hudson.remoting.UserRequest.perform(UserRequest.java:118) 09:08:54 at hudson.remoting.UserRequest.perform(UserRequest.java:48) 09:08:54 at hudson.remoting.Request$2.run(Request.java:287) 09:08:54 at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72) 09:08:54 at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) 09:08:54 at java.util.concurrent.FutureTask.run(Unknown Source) 09:08:54 at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) 09:08:54 at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 09:08:54 at hudson.remoting.Engine$1$1.run(Engine.java:60) 09:08:54 at java.lang.Thread.run(Unknown Source) 09:08:54 Build step 'Copy artifacts from another project' marked build as failure

          Jason Swager added a comment - - edited

          Editing this comment - accidently double clicked the submit button. How do you remove a comment?

          Jason Swager added a comment - - edited Editing this comment - accidently double clicked the submit button. How do you remove a comment?

          reverting to 1.21 for copy plugin seemed to fix the issue

          youri bonnaffe added a comment - reverting to 1.21 for copy plugin seemed to fix the issue

          Jason Swager added a comment -

          Confirmed: downgrading to 1.21 for the copyartifact plugin seems to have eliminated the problem.

          Jason Swager added a comment - Confirmed: downgrading to 1.21 for the copyartifact plugin seems to have eliminated the problem.

          Hi,

          yes - reverting the plugin to 1.21 works fine, but we also had to revert Jenkins to version 1.459 - old plugin + newest Jenkins were not working ...

          Blazej Mirowski added a comment - Hi, yes - reverting the plugin to 1.21 works fine, but we also had to revert Jenkins to version 1.459 - old plugin + newest Jenkins were not working ...

            sogabe sogabe
            jswager1 Jason Swager
            Votes:
            1 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: