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

xUnit crashes on Windows 10 nodes

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Not A Defect
    • Component/s: xunit-plugin
    • Environment:
      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
    • Similar Issues:

      Description

      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.

        Attachments

          Activity

          Hide
          ejpenney Emory Penney added a comment -

          Bug is verified as still present in Jenkins 2.7.1 with XUnit 1.102

          Show
          ejpenney Emory Penney added a comment - Bug is verified as still present in Jenkins 2.7.1 with XUnit 1.102
          Hide
          ejpenney Emory Penney added a comment -

          Verified as still present in Jenkins 2.7.4 with the Windows 10 Anniversary update.

          Show
          ejpenney Emory Penney added a comment - Verified as still present in Jenkins 2.7.4 with the Windows 10 Anniversary update.
          Hide
          ejpenney Emory Penney added a comment -

          It looks like switching to Oracle JDK8 on the Jenkins master may fix this issue.  XUnit and Win10 don't play well when you're using OpenJDK on your Jenkins Master.

          Show
          ejpenney Emory Penney added a comment - It looks like switching to Oracle JDK8 on the Jenkins master  may fix this issue.  XUnit and Win10 don't play well when you're using OpenJDK on your Jenkins Master.

            People

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

              Dates

              • Created:
                Updated:
                Resolved: