[
https://issues.jenkins-ci.org/browse/JENKINS-13776?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=162876#comment-162876
]
Stephen Morrison commented on JENKINS-13776:
--------------------------------------------
Found the culprit. If the /tmp directory of the slave contains more than ~32k
files, this happens. Solution is to go and cleanup the /tmp directory. Would
be nice to have a meaningful error message when this occurs though.
> Slave is unable to checkout svn due to missing resources
> --------------------------------------------------------
>
> Key: JENKINS-13776
> URL: https://issues.jenkins-ci.org/browse/JENKINS-13776
> Project: Jenkins
> Issue Type: Bug
> Components: ssh-slaves
> Affects Versions: current
> Environment: Linux x86_64
> Java 1.6.0_16
> Jenkins 1.464
> ant 1.1
> javadoc 1.0
> offlineonfailure-plugin 1.0
> groovy-postbuild 1.7
> distfork 1.3
> nested-view 1.7
> PrioritySorter 1.3
> maven-plugin 1.464
> subversion 1.40
> cvs 1.6
> build-pipeline-plugin 1.2
> parameterized-trigger 2.14
> copyartifact 1.22
> join 1.15
> global-build-stats 1.0
> build-timeout 1.8
> matrixtieparent 1.1
> email-ext 2.16
> view-job-filters 1.17.2
> nodelabelparameter 1.1.3
> groovy 1.12
> rebuild 1.10
> translation 1.8
> ssh-slaves 0.21
> Reporter: Stephen Morrison
> Assignee: Kohsuke Kawaguchi
> Priority: Blocker
>
> I get the following exception from one of my matrix jobs when the ssh slave
> connects and attempts to checkout the svn repo.
> hudson.util.IOException2: remote file operation failed:
> /ct/home/ct085/jenkins_parent/workspace/master_build at
> hudson.remoting.Channel@581ec7bf:Main_Stream_CT
> at hudson.FilePath.act(FilePath.java:835)
> at hudson.FilePath.act(FilePath.java:821)
> at hudson.scm.SubversionSCM.checkout(SubversionSCM.java:743)
> at hudson.scm.SubversionSCM.checkout(SubversionSCM.java:685)
> at hudson.model.AbstractProject.checkout(AbstractProject.java:1218)
> at
> hudson.model.AbstractBuild$AbstractRunner.checkout(AbstractBuild.java:586)
> at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:475)
> at hudson.model.Run.run(Run.java:1434)
> at hudson.matrix.MatrixBuild.run(MatrixBuild.java:248)
> at hudson.model.ResourceController.execute(ResourceController.java:88)
> at hudson.model.Executor.run(Executor.java:239)
> at hudson.model.OneOffExecutor.run(OneOffExecutor.java:66)
> Caused by: java.io.IOException: Remote call on Main_Stream_CT failed
> at hudson.remoting.Channel.call(Channel.java:655)
> at hudson.FilePath.act(FilePath.java:828)
> ... 11 more
> Caused by: java.lang.Error: Unable to load resource
> javax/servlet/http/LocalStrings.properties
> at
> hudson.remoting.RemoteClassLoader.findResource(RemoteClassLoader.java:202)
> at java.lang.ClassLoader.getResource(ClassLoader.java:978)
> at java.lang.ClassLoader.getResourceAsStream(ClassLoader.java:1168)
> at java.util.ResourceBundle$Control$1.run(ResourceBundle.java:2418)
> at java.util.ResourceBundle$Control$1.run(ResourceBundle.java:2403)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.util.ResourceBundle$Control.newBundle(ResourceBundle.java:2402)
> at java.util.ResourceBundle.loadBundle(ResourceBundle.java:1406)
> at java.util.ResourceBundle.findBundle(ResourceBundle.java:1365)
> at java.util.ResourceBundle.findBundle(ResourceBundle.java:1292)
> at java.util.ResourceBundle.findBundle(ResourceBundle.java:1292)
> at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1234)
> at java.util.ResourceBundle.getBundle(ResourceBundle.java:715)
> at javax.servlet.http.HttpServlet.<clinit>(HttpServlet.java:93)
> at hudson.model.Node$Mode.<clinit>(Node.java:450)
> 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 java.lang.Class.getEnumConstantsShared(Class.java:2942)
> at java.lang.Class.getEnumConstants(Class.java:2920)
> at jenkins.model.Jenkins.<clinit>(Jenkins.java:3845)
> at
> hudson.scm.SubversionSCM.createDefaultSVNOptions(SubversionSCM.java:844)
> at hudson.scm.SubversionSCM.createClientManager(SubversionSCM.java:834)
> at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:766)
> at hudson.scm.SubversionSCM$CheckOutTask.invoke(SubversionSCM.java:753)
> at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2161)
> at hudson.remoting.UserRequest.perform(UserRequest.java:118)
> at hudson.remoting.UserRequest.perform(UserRequest.java:48)
> at hudson.remoting.Request$2.run(Request.java:287)
> at
> hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
> 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)
> Caused by: java.io.FileNotFoundException:
> /tmp/hudson-remoting6547308058951525956/javax/servlet/http/LocalStrings.properties
> (No such file or directory)
> at java.io.FileOutputStream.open(Native Method)
> at java.io.FileOutputStream.<init>(FileOutputStream.java:179)
> at java.io.FileOutputStream.<init>(FileOutputStream.java:131)
> at
> hudson.remoting.RemoteClassLoader.makeResource(RemoteClassLoader.java:270)
> at
> hudson.remoting.RemoteClassLoader.findResource(RemoteClassLoader.java:198)
> ... 35 more
> It only seems to happen on one particular host. Other hosts run off the same
> Jenkins instance by different jobs are fine, but I don't know how to track
> down what is wrong.
> The directory specified in this line "Caused by:
> java.io.FileNotFoundException:
> /tmp/hudson-remoting6547308058951525956/javax/servlet/http/LocalStrings.properties
> (No such file or directory)" does not exist... but I am not sure what
> actually causes that to be created. I have also seen it fail looking for
> Messages.properties instead, and once again it's the /tmp/hudson-remoting*
> directory itself that is missing.
> Java 1.6 is being used on both master and slave. Both are Linux machines.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.jenkins-ci.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira