[ 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