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

xUnit crashes on Windows 10 nodes

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Not A Defect
    • Icon: Major Major
    • xunit-plugin
    • Jenkins 1.642.3 with xUnit Plugin 1.101 on Ubuntu 14.04 x64
      Windows 10 Agents running Java 1.8.77 connected via JNLP agent

      Jobs intermittently crash at the very last second with:

      10:02:14 [xUnit] [ERROR] - The plugin hasn't been performed correctly: remote file operation failed: <workspace> at hudson.remoting.Channel@5b65f425:<node>: java.io.StreamCorruptedException: invalid handle value: 007E7263

      No other log messages are created by the xUnitService Log recorder. I eliminated the XML content as the culprit by copying XMLs from a failed job onto a Windows 8.1 node and having a job parse them 20-30 times with no reproduction.

      We occasionally see a much more descriptive crash, I'm not sure if it's related:

      00:13:56.869 ERROR: Build step failed with exception
      00:13:56.869 java.lang.ClassCastException: java.lang.String cannot be cast to java.io.ObjectStreamClass
      00:13:56.870 at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1511)
      00:13:56.870 at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1771)
      00:13:56.870 at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
      00:13:56.870 at java.io.ObjectInputStream.readObject(ObjectInputStream.java:370)
      00:13:56.870 at java.util.ArrayList.readObject(ArrayList.java:771)
      00:13:56.870 at sun.reflect.GeneratedMethodAccessor3441.invoke(Unknown Source)
      00:13:56.870 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      00:13:56.870 at java.lang.reflect.Method.invoke(Method.java:606)
      00:13:56.870 at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1017)
      00:13:56.870 at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1893)
      00:13:56.870 at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
      00:13:56.870 at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
      00:13:56.870 at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1990)
      00:13:56.870 at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1915)
      00:13:56.870 at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
      00:13:56.870 at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
      00:13:56.870 at java.io.ObjectInputStream.readObject(ObjectInputStream.java:370)
      00:13:56.870 at java.util.ArrayList.readObject(ArrayList.java:771)
      00:13:56.870 at sun.reflect.GeneratedMethodAccessor3441.invoke(Unknown Source)
      00:13:56.870 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      00:13:56.871 at java.lang.reflect.Method.invoke(Method.java:606)
      00:13:56.871 at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1017)
      00:13:56.871 at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1893)
      00:13:56.871 at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
      00:13:56.871 at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
      00:13:56.871 at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1990)
      00:13:56.871 at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1915)
      00:13:56.871 at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
      00:13:56.871 at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
      00:13:56.871 at java.io.ObjectInputStream.readObject(ObjectInputStream.java:370)
      00:13:56.871 at hudson.remoting.UserRequest.deserialize(UserRequest.java:184)
      00:13:56.871 at hudson.remoting.UserResponse.retrieve(UserRequest.java:217)
      00:13:56.871 at hudson.remoting.Channel.call(Channel.java:781)
      00:13:56.871 at hudson.FilePath.act(FilePath.java:979)
      00:13:56.871 at hudson.FilePath.act(FilePath.java:968)
      00:13:56.871 at org.jenkinsci.plugins.xunit.XUnitProcessor.getTestResult(XUnitProcessor.java:326)
      00:13:56.871 at org.jenkinsci.plugins.xunit.XUnitProcessor.recordTestResult(XUnitProcessor.java:288)
      00:13:56.871 at org.jenkinsci.plugins.xunit.XUnitProcessor.performXUnit(XUnitProcessor.java:103)
      00:13:56.871 at org.jenkinsci.plugins.xunit.XUnitPublisher.perform(XUnitPublisher.java:142)
      00:13:56.871 at org.jenkinsci.plugins.xunit.XUnitPublisher.perform(XUnitPublisher.java:134)
      00:13:56.871 at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
      00:13:56.871 at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:782)
      00:13:56.871 at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:723)
      00:13:56.871 at hudson.model.Build$BuildExecution.post2(Build.java:185)
      00:13:56.871 at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:668)
      00:13:56.871 at hudson.model.Run.execute(Run.java:1763)
      00:13:56.871 at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
      00:13:56.871 at hudson.model.ResourceController.execute(ResourceController.java:98)
      00:13:56.871 at hudson.model.Executor.run(Executor.java:410)
      00:13:56.871 Build step 'Publish xUnit test result report' marked build as failure
      00:13:56.884 Finished: FAILURE

      I marked this crash as "Major" instead of "Critical" because we only see this 25~50% of the time depending on planetary alignment.

            gbois Gregory Boissinot
            ejpenney Emory Penney
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: