-
Bug
-
Resolution: Unresolved
-
Critical
-
None
-
Jenkins is on Ubuntu 12.04 x64 running in glassfish 3.1.1
Failing slaves are Windows XP x32
Had a working Jenkins cluster. After upgrading to 1.466.2, many of our builds started failing due to something with the automated ant installation. The console log for the build reports:
Unpacking http://archive.apache.org/dist/ant/binaries/apache-ant-1.7.1-bin.zip to C:\hudson\tools\Ant\ant1.7.1 on nightly-win3
FATAL: remote file operation failed: C:\hudson\tools\Ant\ant1.7.1\apache-ant-1.7.1 at hudson.remoting.Channel@74a62a5d:nightly-win3
hudson.util.IOException2: remote file operation failed: C:\hudson\tools\Ant\ant1.7.1\apache-ant-1.7.1 at hudson.remoting.Channel@74a62a5d:nightly-win3
at hudson.FilePath.act(FilePath.java:835)
at hudson.FilePath.act(FilePath.java:821)
at hudson.FilePath.moveAllChildrenTo(FilePath.java:1543)
at hudson.tools.DownloadFromUrlInstaller.performInstallation(DownloadFromUrlInstaller.java:76)
at hudson.tools.InstallerTranslator.getToolHome(InstallerTranslator.java:61)
at hudson.tools.ToolLocationNodeProperty.getToolHome(ToolLocationNodeProperty.java:107)
at hudson.tools.ToolInstallation.translateFor(ToolInstallation.java:198)
at hudson.tasks.Ant$AntInstallation.forNode(Ant.java:371)
at hudson.tasks.Ant.perform(Ant.java:151)
at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19)
at hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:710)
at hudson.model.Build$RunnerImpl.build(Build.java:178)
at hudson.model.Build$RunnerImpl.doRun(Build.java:139)
at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:480)
at hudson.model.Run.run(Run.java:1438)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:239)
Caused by: java.io.IOException: Failed to rename C:\hudson\tools\Ant\ant1.7.1\apache-ant-1.7.1\docs to C:\hudson\tools\Ant\ant1.7.1\docs
at hudson.FilePath$32.invoke(FilePath.java:1550)
at hudson.FilePath$32.invoke(FilePath.java:1543)
at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2193)
at hudson.remoting.UserRequest.perform(UserRequest.java:118)
at hudson.remoting.UserRequest.perform(UserRequest.java:48)
at hudson.remoting.Request$2.run(Request.java:326)
at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at hudson.remoting.Engine$1$1.run(Engine.java:60)
at java.lang.Thread.run(Unknown Source)
Note that manually moving that directory works fine. Maybe Jenkins is not properly cleaning up file handles when unpacking the .zip file?
This same ant configuration works fine on a Linux slave (but Linux has much less strict file locking).
I have worked around the problem for now by making an ant1.7.1 and an ant1.7.1win version in the configuration, where the win version is not attempting to auto-install.
Thanks! We love Jenkins