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

Remote File Operation Failed when publishing JUnit Test Result Report

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Major Major
    • junit-plugin
    • None

      When publishing a JUnit.xml test report file from a remote slave, occasionally the JUnit plugin will terminate with a "java.io.IOException: remote file operation failed". I know that the JUnit.xml file is properly formatted, because the file is archived as a step before publishing the JUnit test result report. This does not happen on every build execution, but the failure does happen occasionally. I cannot reproduce the failure reliably. Is there any further way to debug the issue?

      The JUnit plugin is triggered as a post build action, immediately after the JUnit.xml file is archived.

      Stack trace from console output of the failing post build action attached below.

      Archiving artifacts
      Recording test results
      ERROR: Step 'Publish JUnit test result report' aborted due to exception:
      java.io.IOException: remote file operation failed: /home/jenkins/workspace/junit-publish-test at hudson.remoting.Channel@6df94301:build_slave (i-abcd1234): java.io.IOException: Remote call on build_slave (i-abcd1234) failed
      at hudson.FilePath.act(FilePath.java:986)
      at hudson.FilePath.act(FilePath.java:968)
      at hudson.tasks.junit.JUnitParser.parseResult(JUnitParser.java:103)
      at hudson.tasks.junit.JUnitResultArchiver.parse(JUnitResultArchiver.java:126)
      at hudson.tasks.junit.JUnitResultArchiver.perform(JUnitResultArchiver.java:144)
      at hudson.tasks.BuildStepCompatibilityLayer.perform(BuildStepCompatibilityLayer.java:78)
      at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
      at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:782)
      at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:723)
      at hudson.model.Build$BuildExecution.post2(Build.java:185)
      at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:668)
      at hudson.model.Run.execute(Run.java:1763)
      at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
      at hudson.model.ResourceController.execute(ResourceController.java:98)
      at hudson.model.Executor.run(Executor.java:410)
      Caused by: java.io.IOException: Remote call on build_slave (i-abcd1234) failed
      at hudson.remoting.Channel.call(Channel.java:789)
      at hudson.FilePath.act(FilePath.java:979)
      ... 14 more
      Caused by: java.lang.Error: Failed to deserialize the Callable object.
      at hudson.remoting.UserRequest.perform(UserRequest.java:104)
      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:68)
      at java.util.concurrent.FutureTask.run(FutureTask.java:262)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      at java.lang.Thread.run(Thread.java:745)
      at ......remote call to build_slave (i-abcd1234)(Native Method)
      at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1416)
      at hudson.remoting.UserResponse.retrieve(UserRequest.java:220)
      at hudson.remoting.Channel.call(Channel.java:781)
      ... 15 more
      Caused by: hudson.remoting.RemotingSystemException: java.lang.InterruptedException
      at hudson.remoting.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:266)
      at com.sun.proxy.$Proxy5.fetch3(Unknown Source)
      at hudson.remoting.RemoteClassLoader.findClass(RemoteClassLoader.java:171)
      at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
      at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
      at java.lang.ClassLoader.defineClass1(Native Method)
      at java.lang.ClassLoader.defineClass(ClassLoader.java:803)
      at java.lang.ClassLoader.defineClass(ClassLoader.java:643)
      at hudson.remoting.RemoteClassLoader.loadClassFile(RemoteClassLoader.java:338)
      at hudson.remoting.RemoteClassLoader.findClass(RemoteClassLoader.java:251)
      at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
      at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
      at java.lang.Class.getDeclaredMethods0(Native Method)
      at java.lang.Class.privateGetDeclaredMethods(Class.java:2625)
      at java.lang.Class.getDeclaredMethod(Class.java:2015)
      at java.io.ObjectStreamClass.getPrivateMethod(ObjectStreamClass.java:1475)
      at java.io.ObjectStreamClass.access$1700(ObjectStreamClass.java:72)
      at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:498)
      at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:472)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.io.ObjectStreamClass.<init>(ObjectStreamClass.java:472)
      at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java:369)
      at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:598)
      at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1622)
      at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1517)
      at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1771)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
      at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1997)
      at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1921)
      at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
      at java.io.ObjectInputStream.readObject(ObjectInputStream.java:370)
      at hudson.remoting.UserRequest.deserialize(UserRequest.java:184)
      at hudson.remoting.UserRequest.perform(UserRequest.java:98)
      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:68)
      at java.util.concurrent.FutureTask.run(FutureTask.java:262)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      at java.lang.Thread.run(Thread.java:745)
      Caused by: java.lang.InterruptedException
      at java.lang.Object.wait(Native Method)
      at hudson.remoting.Request.call(Request.java:147)
      at hudson.remoting.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:253)
      ... 40 more

          [JENKINS-34108] Remote File Operation Failed when publishing JUnit Test Result Report

          mohit tater added a comment -

          Facing similar issue on Jenkins 2.17 and JUnit 1.15 for some of our jobs it is failing.

          Following is the exception which was thrown:

          ERROR: Step ‘Publish JUnit test result report’ aborted due to exception: 
          java.io.IOException: remote file operation failed: /var/lib/jenkins/workspace/some-job at hudson.remoting.Channel@407caef6:some_slave: java.io.IOException: Remote call on some_slave failed
          	at hudson.FilePath.act(FilePath.java:1014)
          	at hudson.FilePath.act(FilePath.java:996)
          	at hudson.tasks.junit.JUnitParser.parseResult(JUnitParser.java:103)
          	at hudson.tasks.junit.JUnitResultArchiver.parse(JUnitResultArchiver.java:127)
          	at hudson.tasks.junit.JUnitResultArchiver.perform(JUnitResultArchiver.java:149)
          	at hudson.tasks.BuildStepCompatibilityLayer.perform(BuildStepCompatibilityLayer.java:78)
          	at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
          	at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:779)
          	at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:720)
          	at hudson.model.Build$BuildExecution.post2(Build.java:185)
          	at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:665)
          	at hudson.model.Run.execute(Run.java:1745)
          	at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
          	at hudson.model.ResourceController.execute(ResourceController.java:98)
          	at hudson.model.Executor.run(Executor.java:404)
          Caused by: java.io.IOException: Remote call on Qoe_Ubuntu failed
          	at hudson.remoting.Channel.call(Channel.java:789)
          	at hudson.FilePath.act(FilePath.java:1007)
          	... 14 more
          Caused by: java.lang.NoClassDefFoundError: Could not initialize class jenkins.model.Jenkins
          	at hudson.util.io.ParserConfigurator.applyConfiguration(ParserConfigurator.java:78)
          	at hudson.tasks.junit.SuiteResult.parse(SuiteResult.java:124)
          	at hudson.tasks.junit.TestResult.parse(TestResult.java:301)
          	at hudson.tasks.junit.TestResult.parsePossiblyEmpty(TestResult.java:244)
          	at hudson.tasks.junit.TestResult.parse(TestResult.java:175)
          	at hudson.tasks.junit.TestResult.parse(TestResult.java:154)
          	at hudson.tasks.junit.TestResult.<init>(TestResult.java:126)
          	at hudson.tasks.junit.JUnitParser$ParseResultCallable.invoke(JUnitParser.java:132)
          	at hudson.tasks.junit.JUnitParser$ParseResultCallable.invoke(JUnitParser.java:107)
          	at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2772)
          	at hudson.remoting.UserRequest.perform(UserRequest.java:153)
          	at hudson.remoting.UserRequest.perform(UserRequest.java:50)
          	at hudson.remoting.Request$2.run(Request.java:332)
          	at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:68)
          	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
          	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
          	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
          	at java.lang.Thread.run(Thread.java:745)
          	at ......remote call to Qoe_Ubuntu(Native Method)
          	at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1416)
          	at hudson.remoting.UserResponse.retrieve(UserRequest.java:253)
          	at hudson.remoting.Channel.call(Channel.java:781)
          	... 15 more
          

          We are seeing this issue with windows and linux(Ubuntu) slaves

          mohit tater added a comment - Facing similar issue on Jenkins 2.17 and JUnit 1.15 for some of our jobs it is failing. Following is the exception which was thrown: ERROR: Step ‘Publish JUnit test result report’ aborted due to exception: java.io.IOException: remote file operation failed: / var /lib/jenkins/workspace/some-job at hudson.remoting.Channel@407caef6:some_slave: java.io.IOException: Remote call on some_slave failed at hudson.FilePath.act(FilePath.java:1014) at hudson.FilePath.act(FilePath.java:996) at hudson.tasks.junit.JUnitParser.parseResult(JUnitParser.java:103) at hudson.tasks.junit.JUnitResultArchiver.parse(JUnitResultArchiver.java:127) at hudson.tasks.junit.JUnitResultArchiver.perform(JUnitResultArchiver.java:149) at hudson.tasks.BuildStepCompatibilityLayer.perform(BuildStepCompatibilityLayer.java:78) at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20) at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:779) at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:720) at hudson.model.Build$BuildExecution.post2(Build.java:185) at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:665) at hudson.model.Run.execute(Run.java:1745) at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43) at hudson.model.ResourceController.execute(ResourceController.java:98) at hudson.model.Executor.run(Executor.java:404) Caused by: java.io.IOException: Remote call on Qoe_Ubuntu failed at hudson.remoting.Channel.call(Channel.java:789) at hudson.FilePath.act(FilePath.java:1007) ... 14 more Caused by: java.lang.NoClassDefFoundError: Could not initialize class jenkins.model.Jenkins at hudson.util.io.ParserConfigurator.applyConfiguration(ParserConfigurator.java:78) at hudson.tasks.junit.SuiteResult.parse(SuiteResult.java:124) at hudson.tasks.junit.TestResult.parse(TestResult.java:301) at hudson.tasks.junit.TestResult.parsePossiblyEmpty(TestResult.java:244) at hudson.tasks.junit.TestResult.parse(TestResult.java:175) at hudson.tasks.junit.TestResult.parse(TestResult.java:154) at hudson.tasks.junit.TestResult.<init>(TestResult.java:126) at hudson.tasks.junit.JUnitParser$ParseResultCallable.invoke(JUnitParser.java:132) at hudson.tasks.junit.JUnitParser$ParseResultCallable.invoke(JUnitParser.java:107) at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2772) at hudson.remoting.UserRequest.perform(UserRequest.java:153) at hudson.remoting.UserRequest.perform(UserRequest.java:50) at hudson.remoting.Request$2.run(Request.java:332) at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:68) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang. Thread .run( Thread .java:745) at ......remote call to Qoe_Ubuntu(Native Method) at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1416) at hudson.remoting.UserResponse.retrieve(UserRequest.java:253) at hudson.remoting.Channel.call(Channel.java:781) ... 15 more We are seeing this issue with windows and linux(Ubuntu) slaves

          Brandon Heller added a comment - - edited

          I'm seeing the same occasional error too, when many jobs go to publish their junit reports, and only since July 2016.

          Using Junit 1.13 and Jenkins 1.656 on Ubuntu 14.04 machines.

          ERROR: Step ?Publish JUnit test result report? aborted due to exception:
          java.io.IOException: remote file operation failed: /home/jenkins/workspace/jobdsl/job-fwd-search-accept at hudson.remoting.Channel@68e8e7e9:jenkins-slave-4-34fc6e9c: java.io.IOException: Remote call on jenkins-slave-4-34fc6e9c failed
          at hudson.FilePath.act(FilePath.java:986)
          at hudson.FilePath.act(FilePath.java:968)
          at hudson.tasks.junit.JUnitParser.parseResult(JUnitParser.java:103)
          at hudson.tasks.junit.JUnitResultArchiver.parse(JUnitResultArchiver.java:126)
          at hudson.tasks.junit.JUnitResultArchiver.perform(JUnitResultArchiver.java:148)
          at hudson.tasks.BuildStepCompatibilityLayer.perform(BuildStepCompatibilityLayer.java:78)
          at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
          at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:782)
          at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:723)
          at hudson.model.Build$BuildExecution.post2(Build.java:185)
          at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:668)
          at hudson.model.Run.execute(Run.java:1763)
          at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
          at hudson.model.ResourceController.execute(ResourceController.java:98)
          at hudson.model.Executor.run(Executor.java:410)
          Caused by: java.io.IOException: Remote call on jenkins-slave-4-34fc6e9c failed
          at hudson.remoting.Channel.call(Channel.java:789)
          at hudson.FilePath.act(FilePath.java:979)
          ... 14 more
          Caused by: java.lang.Error: Failed to deserialize the Callable object.
          at hudson.remoting.UserRequest.perform(UserRequest.java:104)
          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:68)
          at java.util.concurrent.FutureTask.run(FutureTask.java:266)
          at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
          at hudson.remoting.Engine$1$1.run(Engine.java:62)
          at java.lang.Thread.run(Thread.java:745)
          at ......remote call to jenkins-slave-4-34fc6e9c(Native Method)
          at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1416)
          at hudson.remoting.UserResponse.retrieve(UserRequest.java:220)
          at hudson.remoting.Channel.call(Channel.java:781)
          ... 15 more
          Caused by: hudson.remoting.RemotingSystemException: java.lang.InterruptedException
          at hudson.remoting.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:266)
          at com.sun.proxy.$Proxy5.fetch3(Unknown Source)
          at hudson.remoting.RemoteClassLoader.findClass(RemoteClassLoader.java:171)
          at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
          at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
          at java.lang.ClassLoader.defineClass1(Native Method)
          at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
          at java.lang.ClassLoader.defineClass(ClassLoader.java:642)
          at hudson.remoting.RemoteClassLoader.loadClassFile(RemoteClassLoader.java:338)
          at hudson.remoting.RemoteClassLoader.findClass(RemoteClassLoader.java:251)
          at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
          at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
          at java.lang.Class.getDeclaredMethods0(Native Method)
          at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
          at java.lang.Class.getDeclaredMethod(Class.java:2128)
          at java.io.ObjectStreamClass.getPrivateMethod(ObjectStreamClass.java:1475)
          at java.io.ObjectStreamClass.access$1700(ObjectStreamClass.java:72)
          at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:498)
          at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:472)
          at java.security.AccessController.doPrivileged(Native Method)
          at java.io.ObjectStreamClass.<init>(ObjectStreamClass.java:472)
          at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java:369)
          at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:598)
          at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1630)
          at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1521)
          at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1781)
          at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1353)
          at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2018)
          at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1942)
          at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1808)
          at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1353)
          at java.io.ObjectInputStream.readObject(ObjectInputStream.java:373)
          at hudson.remoting.UserRequest.deserialize(UserRequest.java:184)
          at hudson.remoting.UserRequest.perform(UserRequest.java:98)
          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:68)
          at java.util.concurrent.FutureTask.run(FutureTask.java:266)
          at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
          at hudson.remoting.Engine$1$1.run(Engine.java:62)
          at java.lang.Thread.run(Thread.java:745)
          Caused by: java.lang.InterruptedException
          at java.lang.Object.wait(Native Method)
          at hudson.remoting.Request.call(Request.java:147)
          at hudson.remoting.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:253)
          ... 41 more
          Finished: FAILURE

          Brandon Heller added a comment - - edited I'm seeing the same occasional error too, when many jobs go to publish their junit reports, and only since July 2016. Using Junit 1.13 and Jenkins 1.656 on Ubuntu 14.04 machines. ERROR: Step ?Publish JUnit test result report? aborted due to exception: java.io.IOException: remote file operation failed: /home/jenkins/workspace/jobdsl/job-fwd-search-accept at hudson.remoting.Channel@68e8e7e9:jenkins-slave-4-34fc6e9c: java.io.IOException: Remote call on jenkins-slave-4-34fc6e9c failed at hudson.FilePath.act(FilePath.java:986) at hudson.FilePath.act(FilePath.java:968) at hudson.tasks.junit.JUnitParser.parseResult(JUnitParser.java:103) at hudson.tasks.junit.JUnitResultArchiver.parse(JUnitResultArchiver.java:126) at hudson.tasks.junit.JUnitResultArchiver.perform(JUnitResultArchiver.java:148) at hudson.tasks.BuildStepCompatibilityLayer.perform(BuildStepCompatibilityLayer.java:78) at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20) at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:782) at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:723) at hudson.model.Build$BuildExecution.post2(Build.java:185) at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:668) at hudson.model.Run.execute(Run.java:1763) at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43) at hudson.model.ResourceController.execute(ResourceController.java:98) at hudson.model.Executor.run(Executor.java:410) Caused by: java.io.IOException: Remote call on jenkins-slave-4-34fc6e9c failed at hudson.remoting.Channel.call(Channel.java:789) at hudson.FilePath.act(FilePath.java:979) ... 14 more Caused by: java.lang.Error: Failed to deserialize the Callable object. at hudson.remoting.UserRequest.perform(UserRequest.java:104) 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:68) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at hudson.remoting.Engine$1$1.run(Engine.java:62) at java.lang.Thread.run(Thread.java:745) at ......remote call to jenkins-slave-4-34fc6e9c(Native Method) at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1416) at hudson.remoting.UserResponse.retrieve(UserRequest.java:220) at hudson.remoting.Channel.call(Channel.java:781) ... 15 more Caused by: hudson.remoting.RemotingSystemException: java.lang.InterruptedException at hudson.remoting.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:266) at com.sun.proxy.$Proxy5.fetch3(Unknown Source) at hudson.remoting.RemoteClassLoader.findClass(RemoteClassLoader.java:171) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:763) at java.lang.ClassLoader.defineClass(ClassLoader.java:642) at hudson.remoting.RemoteClassLoader.loadClassFile(RemoteClassLoader.java:338) at hudson.remoting.RemoteClassLoader.findClass(RemoteClassLoader.java:251) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) at java.lang.Class.getDeclaredMethods0(Native Method) at java.lang.Class.privateGetDeclaredMethods(Class.java:2701) at java.lang.Class.getDeclaredMethod(Class.java:2128) at java.io.ObjectStreamClass.getPrivateMethod(ObjectStreamClass.java:1475) at java.io.ObjectStreamClass.access$1700(ObjectStreamClass.java:72) at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:498) at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:472) at java.security.AccessController.doPrivileged(Native Method) at java.io.ObjectStreamClass.<init>(ObjectStreamClass.java:472) at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java:369) at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:598) at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1630) at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1521) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1781) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1353) at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:2018) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1942) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1808) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1353) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:373) at hudson.remoting.UserRequest.deserialize(UserRequest.java:184) at hudson.remoting.UserRequest.perform(UserRequest.java:98) 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:68) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at hudson.remoting.Engine$1$1.run(Engine.java:62) at java.lang.Thread.run(Thread.java:745) Caused by: java.lang.InterruptedException at java.lang.Object.wait(Native Method) at hudson.remoting.Request.call(Request.java:147) at hudson.remoting.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:253) ... 41 more Finished: FAILURE

          We had the same issue. The problem was in the incorrect format of XML fed to JUnit plugin (version 1.13 in our case). The XML was valid, however the JUnit apparently didn't like it and threw exception when processing it. It seems that xUnit handles this more gracefully. After switching from JUnit to xUnit it gave the message:
          [xUnit] [ERROR] - The result file 'xxxx' for the metric 'JUnit' is not valid. The result file has been skipped.

          boris bondarenko added a comment - We had the same issue. The problem was in the incorrect format of XML fed to JUnit plugin (version 1.13 in our case). The XML was valid, however the JUnit apparently didn't like it and threw exception when processing it. It seems that xUnit handles this more gracefully. After switching from JUnit to xUnit it gave the message: [xUnit] [ERROR] - The result file 'xxxx' for the metric 'JUnit' is not valid. The result file has been skipped.

          The issue appears to be related to ParserConfigurator#applyConfiguration()

          Emilio Escobar added a comment - The issue appears to be related to ParserConfigurator#applyConfiguration()

          Vlad Aginsky added a comment -

           I also observer this issue. I see that if i save my junit xmls aside, and try to reparse them again with junit plugin i always succeed. so it is not something wrong with xml's.

          Vlad Aginsky added a comment -  I also observer this issue. I see that if i save my junit xmls aside, and try to reparse them again with junit plugin i always succeed. so it is not something wrong with xml's.

          Florent P. added a comment - - edited

          Sorry to reopen a dead thread, but this issue araised on our setup as well, here are the infos I can provide on how we got there:

          • Jenkins: 1.653
          • JUnit: 1.18

          Our pipelines were running fine on a slave machine on CentOS 5.

          We replaced that slave machine by another on Oracle Linux 8.5 with the same internal setup, and now this issue started to appear, and it is not random it is always there 100% of the time.

          Here is the full log we get:

          11:29:38 ERROR: Step ‘Publish JUnit test result report’ aborted due to exception: 
          11:29:38 java.io.IOException: remote file operation failed: /home/jenkins at hudson.remoting.Channel@2a2290:SLAVE_MACHINE: java.io.IOException: Remote call on SLAVE_MACHINE failed
          11:29:38 	at hudson.FilePath.act(FilePath.java:986)
          11:29:38 	at hudson.FilePath.act(FilePath.java:968)
          11:29:38 	at hudson.tasks.junit.JUnitParser.parseResult(JUnitParser.java:103)
          11:29:38 	at hudson.tasks.junit.JUnitResultArchiver.parse(JUnitResultArchiver.java:128)
          11:29:38 	at hudson.tasks.junit.JUnitResultArchiver.perform(JUnitResultArchiver.java:149)
          11:29:38 	at hudson.tasks.BuildStepCompatibilityLayer.perform(BuildStepCompatibilityLayer.java:78)
          11:29:38 	at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
          11:29:38 	at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:782)
          11:29:38 	at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:723)
          11:29:38 	at hudson.model.Build$BuildExecution.post2(Build.java:185)
          11:29:38 	at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:668)
          11:29:38 	at hudson.model.Run.execute(Run.java:1763)
          11:29:38 	at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
          11:29:38 	at hudson.model.ResourceController.execute(ResourceController.java:98)
          11:29:38 	at hudson.model.Executor.run(Executor.java:410)
          11:29:38 Caused by: java.io.IOException: Remote call on SLAVE_MACHINE failed
          11:29:38 	at hudson.remoting.Channel.call(Channel.java:789)
          11:29:38 	at hudson.FilePath.act(FilePath.java:979)
          11:29:38 	... 14 more
          11:29:38 Caused by: java.lang.NoClassDefFoundError: Could not initialize class jenkins.model.Jenkins
          11:29:38 	at hudson.util.io.ParserConfigurator.applyConfiguration(ParserConfigurator.java:78)
          11:29:38 	at hudson.tasks.junit.SuiteResult.parse(SuiteResult.java:124)
          11:29:38 	at hudson.tasks.junit.TestResult.parse(TestResult.java:301)
          11:29:38 	at hudson.tasks.junit.TestResult.parsePossiblyEmpty(TestResult.java:244)
          11:29:38 	at hudson.tasks.junit.TestResult.parse(TestResult.java:175)
          11:29:38 	at hudson.tasks.junit.TestResult.parse(TestResult.java:154)
          11:29:38 	at hudson.tasks.junit.TestResult.<init>(TestResult.java:126)
          11:29:38 	at hudson.tasks.junit.JUnitParser$ParseResultCallable.invoke(JUnitParser.java:132)
          11:29:38 	at hudson.tasks.junit.JUnitParser$ParseResultCallable.invoke(JUnitParser.java:107)
          11:29:38 	at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2719)
          11:29:38 	at hudson.remoting.UserRequest.perform(UserRequest.java:120)
          11:29:38 	at hudson.remoting.UserRequest.perform(UserRequest.java:48)
          11:29:38 	at hudson.remoting.Request$2.run(Request.java:332)
          11:29:38 	at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:68)
          11:29:38 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
          11:29:38 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
          11:29:38 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
          11:29:38 	at java.lang.Thread.run(Thread.java:750)
          11:29:38 	at ......remote call to SLAVE_MACHINE(Native Method)
          11:29:38 	at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1416)
          11:29:38 	at hudson.remoting.UserResponse.retrieve(UserRequest.java:220)
          11:29:38 	at hudson.remoting.Channel.call(Channel.java:781)
          11:29:38 	... 15 more
          11:29:38 Finished: FAILURE

          Sadly changing the JUnit plugin is not an option here, so hopefully someone can figure out a better solution...

          Florent P. added a comment - - edited Sorry to reopen a dead thread, but this issue araised on our setup as well, here are the infos I can provide on how we got there: Jenkins: 1.653 JUnit: 1.18 Our pipelines were running fine on a slave machine on CentOS 5 . We replaced that slave machine by another on Oracle Linux 8.5 with the same internal setup, and now this issue started to appear, and it is not random it is always there 100% of the time. Here is the full log we get: 11:29:38 ERROR: Step ‘Publish JUnit test result report’ aborted due to exception: 11:29:38 java.io.IOException: remote file operation failed: /home/jenkins at hudson.remoting.Channel@2a2290:SLAVE_MACHINE: java.io.IOException: Remote call on SLAVE_MACHINE failed 11:29:38 at hudson.FilePath.act(FilePath.java:986) 11:29:38 at hudson.FilePath.act(FilePath.java:968) 11:29:38 at hudson.tasks.junit.JUnitParser.parseResult(JUnitParser.java:103) 11:29:38 at hudson.tasks.junit.JUnitResultArchiver.parse(JUnitResultArchiver.java:128) 11:29:38 at hudson.tasks.junit.JUnitResultArchiver.perform(JUnitResultArchiver.java:149) 11:29:38 at hudson.tasks.BuildStepCompatibilityLayer.perform(BuildStepCompatibilityLayer.java:78) 11:29:38 at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20) 11:29:38 at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:782) 11:29:38 at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:723) 11:29:38 at hudson.model.Build$BuildExecution.post2(Build.java:185) 11:29:38 at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:668) 11:29:38 at hudson.model.Run.execute(Run.java:1763) 11:29:38 at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43) 11:29:38 at hudson.model.ResourceController.execute(ResourceController.java:98) 11:29:38 at hudson.model.Executor.run(Executor.java:410) 11:29:38 Caused by: java.io.IOException: Remote call on SLAVE_MACHINE failed 11:29:38 at hudson.remoting.Channel.call(Channel.java:789) 11:29:38 at hudson.FilePath.act(FilePath.java:979) 11:29:38 ... 14 more 11:29:38 Caused by: java.lang.NoClassDefFoundError: Could not initialize class jenkins.model.Jenkins 11:29:38 at hudson.util.io.ParserConfigurator.applyConfiguration(ParserConfigurator.java:78) 11:29:38 at hudson.tasks.junit.SuiteResult.parse(SuiteResult.java:124) 11:29:38 at hudson.tasks.junit.TestResult.parse(TestResult.java:301) 11:29:38 at hudson.tasks.junit.TestResult.parsePossiblyEmpty(TestResult.java:244) 11:29:38 at hudson.tasks.junit.TestResult.parse(TestResult.java:175) 11:29:38 at hudson.tasks.junit.TestResult.parse(TestResult.java:154) 11:29:38 at hudson.tasks.junit.TestResult.<init>(TestResult.java:126) 11:29:38 at hudson.tasks.junit.JUnitParser$ParseResultCallable.invoke(JUnitParser.java:132) 11:29:38 at hudson.tasks.junit.JUnitParser$ParseResultCallable.invoke(JUnitParser.java:107) 11:29:38 at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2719) 11:29:38 at hudson.remoting.UserRequest.perform(UserRequest.java:120) 11:29:38 at hudson.remoting.UserRequest.perform(UserRequest.java:48) 11:29:38 at hudson.remoting.Request$2.run(Request.java:332) 11:29:38 at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:68) 11:29:38 at java.util.concurrent.FutureTask.run(FutureTask.java:266) 11:29:38 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 11:29:38 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 11:29:38 at java.lang.Thread.run(Thread.java:750) 11:29:38 at ......remote call to SLAVE_MACHINE(Native Method) 11:29:38 at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1416) 11:29:38 at hudson.remoting.UserResponse.retrieve(UserRequest.java:220) 11:29:38 at hudson.remoting.Channel.call(Channel.java:781) 11:29:38 ... 15 more 11:29:38 Finished: FAILURE Sadly changing the JUnit plugin is not an option here, so hopefully someone can figure out a better solution...

          Florent P. added a comment - - edited

          I think I found the solution with the help of this comment from pooja shah.

          Basically, I checked the log of the slave machine on Jenkins and noticed that the last message was a java exception:

           

          jenkins.model.Jenkins <clinit>
          SEVERE: Failed to load Jenkins.class hudson.remoting.RemotingSystemException: java.lang.InterruptedException
               at hudson.remoting.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:266)
               at com.sun.proxy.$Proxy5.fetch3(Unknown Source)
               at hudson.remoting.RemoteClassLoader.findClass(RemoteClassLoader.java:171)
               at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
               at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
               at com.thoughtworks.xstream.XStream.setupConverters(XStream.java:818)
               at com.thoughtworks.xstream.XStream.<init>(XStream.java:574)
               at com.thoughtworks.xstream.XStream.<init>(XStream.java:496)
               at com.thoughtworks.xstream.XStream.<init>(XStream.java:465)
               at com.thoughtworks.xstream.XStream.<init>(XStream.java:411)
               at com.thoughtworks.xstream.XStream.<init>(XStream.java:350)
               at hudson.util.XStream2.<init>(XStream2.java:89)
               at jenkins.model.Jenkins.<clinit>(Jenkins.java:4686)
               at hudson.ExtensionList.lookup(ExtensionList.java:400)
               at hudson.FilePath.act(FilePath.java:976)
               at hudson.FilePath.act(FilePath.java:968)
               at hudson.FilePath.copyTo(FilePath.java:2011)
               at hudson.FilePath.copyTo(FilePath.java:1985)
               at hudson.plugins.logparser.LogParserStatusComputer.computeStatusMatches(LogParserStatusComputer.java:78)
               at hudson.plugins.logparser.LogParserStatusComputer.access$000(LogParserStatusComputer.java:23)
               at hudson.plugins.logparser.LogParserStatusComputer$1.call(LogParserStatusComputer.java:44)
               at hudson.plugins.logparser.LogParserStatusComputer$1.call(LogParserStatusComputer.java:40)
               at hudson.remoting.UserRequest.perform(UserRequest.java:120)
               at hudson.remoting.UserRequest.perform(UserRequest.java:48)
               at hudson.remoting.Request$2.run(Request.java:332)
               at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:68)
               at java.util.concurrent.FutureTask.run(FutureTask.java:266)
               at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
               at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
               at java.lang.Thread.run(Thread.java:750)
          Caused by: java.lang.InterruptedException
               at java.lang.Object.wait(Native Method)
               at hudson.remoting.Request.call(Request.java:147)
               at hudson.remoting.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:253)
               ... 29 more 

          Following the advice on the other thread, I restarted the slave, and that fixed it for me

          There is yet to investigate why the slave ended up in that state tough...

           

          Florent P. added a comment - - edited I think I found the solution with the help of this comment from pooja shah. Basically, I checked the log of the slave machine on Jenkins and noticed that the last message was a java exception:   jenkins.model.Jenkins <clinit> SEVERE: Failed to load Jenkins.class hudson.remoting.RemotingSystemException: java.lang.InterruptedException      at hudson.remoting.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:266)      at com.sun.proxy.$Proxy5.fetch3(Unknown Source)      at hudson.remoting.RemoteClassLoader.findClass(RemoteClassLoader.java:171)      at java.lang.ClassLoader.loadClass(ClassLoader.java:418)      at java.lang.ClassLoader.loadClass(ClassLoader.java:351)      at com.thoughtworks.xstream.XStream.setupConverters(XStream.java:818)      at com.thoughtworks.xstream.XStream.<init>(XStream.java:574)      at com.thoughtworks.xstream.XStream.<init>(XStream.java:496)      at com.thoughtworks.xstream.XStream.<init>(XStream.java:465)      at com.thoughtworks.xstream.XStream.<init>(XStream.java:411)      at com.thoughtworks.xstream.XStream.<init>(XStream.java:350)      at hudson.util.XStream2.<init>(XStream2.java:89)      at jenkins.model.Jenkins.<clinit>(Jenkins.java:4686)      at hudson.ExtensionList.lookup(ExtensionList.java:400)      at hudson.FilePath.act(FilePath.java:976)      at hudson.FilePath.act(FilePath.java:968)      at hudson.FilePath.copyTo(FilePath.java:2011)      at hudson.FilePath.copyTo(FilePath.java:1985)      at hudson.plugins.logparser.LogParserStatusComputer.computeStatusMatches(LogParserStatusComputer.java:78)      at hudson.plugins.logparser.LogParserStatusComputer.access$000(LogParserStatusComputer.java:23)      at hudson.plugins.logparser.LogParserStatusComputer$1.call(LogParserStatusComputer.java:44)      at hudson.plugins.logparser.LogParserStatusComputer$1.call(LogParserStatusComputer.java:40)      at hudson.remoting.UserRequest.perform(UserRequest.java:120)      at hudson.remoting.UserRequest.perform(UserRequest.java:48)      at hudson.remoting.Request$2.run(Request.java:332)      at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:68)      at java.util.concurrent.FutureTask.run(FutureTask.java:266)      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)     at java.lang.Thread.run(Thread.java:750) Caused by: java.lang.InterruptedException      at java.lang.Object.wait(Native Method)      at hudson.remoting.Request.call(Request.java:147)      at hudson.remoting.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:253)      ... 29 more Following the advice on the other thread, I restarted the slave, and that fixed it for me There is yet to investigate why the slave ended up in that state tough...  

            Unassigned Unassigned
            brokenthumbs Dan Chan
            Votes:
            13 Vote for this issue
            Watchers:
            14 Start watching this issue

              Created:
              Updated: