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

PCT sometimes crashes on Java 11 due to module read errors when using the docker image

      https://issues.apache.org/jira/browse/SUREFIRE-1496

       

      Command: // custom image is used for error propagation

      docker run --rm -v maven-repo:/root/.m2 -v $(pwd)/out:/pct/out -e ARTIFACT_ID=ssh-slaves -e VERSION=ssh-slaves-1.24 -e JDK_VERSION=11 onenashev/pct
      

       

      Output:

       

      + echo 'ERROR: PCT failed with code 1. Will check for Maven Surefire dumps if it crashed' ERROR: PCT failed with code 1. Will check for Maven Surefire dumps if it crashed + read file + find /pct/tmp/work/ssh-slaves/target/surefire-reports/2018-12-12T11-08-54_738-jvmRun1.dumpstream Found Maven Surefire dump file: /pct/tmp/work/ssh-slaves/target/surefire-reports/2018-12-12T11-08-54_738-jvmRun1.dumpstream + echo 'Found Maven Surefire dump file: /pct/tmp/work/ssh-slaves/target/surefire-reports/2018-12-12T11-08-54_738-jvmRun1.dumpstream' + cat /pct/tmp/work/ssh-slaves/target/surefire-reports/2018-12-12T11-08-54_738-jvmRun1.dumpstream # Created on 2018-12-12T11:08:55.538 Corrupted stdin stream in forked JVM 1. Stream 'Error occurred during initialization of boot layer'. java.lang.IllegalArgumentException: Stream stdin corrupted. Expected comma after third character in command 'Error occurred during initialization of boot layer'. at org.apache.maven.plugin.surefire.booterclient.output.ForkClient$OperationalData.<init>(ForkClient.java:469) at org.apache.maven.plugin.surefire.booterclient.output.ForkClient.processLine(ForkClient.java:191) at org.apache.maven.plugin.surefire.booterclient.output.ForkClient.consumeLine(ForkClient.java:158) at org.apache.maven.plugin.surefire.booterclient.output.ThreadedStreamConsumer$Pumper.run(ThreadedStreamConsumer.java:87) at java.lang.Thread.run(Thread.java:748) # Created on 2018-12-12T11:08:55.541 Corrupted stdin stream in forked JVM 1. Stream 'java.lang.module.FindException: Error reading /pct/jdk11-libs/javax.activation.jar'. java.lang.IllegalArgumentException: Stream stdin corrupted. Expected comma after third character in command 'java.lang.module.FindException: Error reading /pct/jdk11-libs/javax.activation.jar'. at org.apache.maven.plugin.surefire.booterclient.output.ForkClient$OperationalData.<init>(ForkClient.java:469) at org.apache.maven.plugin.surefire.booterclient.output.ForkClient.processLine(ForkClient.java:191) at org.apache.maven.plugin.surefire.booterclient.output.ForkClient.consumeLine(ForkClient.java:158) at org.apache.maven.plugin.surefire.booterclient.output.ThreadedStreamConsumer$Pumper.run(ThreadedStreamConsumer.java:87) at java.lang.Thread.run(Thread.java:748) # Created on 2018-12-12T11:08:55.542 Corrupted stdin stream in forked JVM 1. Stream 'Caused by: java.util.zip.ZipException: zip END header not found'. java.lang.IllegalArgumentException: Stream stdin corrupted. Expected comma after third character in command 'Caused by: java.util.zip.ZipException: zip END header not found'. at org.apache.maven.plugin.surefire.booterclient.output.ForkClient$OperationalData.<init>(ForkClient.java:469) at org.apache.maven.plugin.surefire.booterclient.output.ForkClient.processLine(ForkClient.java:191) at org.apache.maven.plugin.surefire.booterclient.output.ForkClient.consumeLine(ForkClient.java:158) at org.apache.maven.plugin.surefire.booterclient.output.ThreadedStreamConsumer$Pumper.run(ThreadedStreamConsumer.java:87) at java.lang.Thread.run(Thread.java:748) 

       

      Acceptance criteria

      • Figure out if it's failing under other conditions
      • PCT runs with Java 11 and docker image

          [JENKINS-55146] PCT sometimes crashes on Java 11 due to module read errors when using the docker image

          Oleg Nenashev created issue -
          Oleg Nenashev made changes -
          Assignee New: Oleg Nenashev [ oleg_nenashev ]
          Oleg Nenashev made changes -
          Status Original: Open [ 1 ] New: In Progress [ 3 ]
          Oleg Nenashev made changes -
          Component/s New: plugin-pom [ 21982 ]

          Oleg Nenashev added a comment -

          According to https://github.com/junit-team/junit5/issues/855 , this is actually a valid issue in Maven Surefire Plugin which is fixed in 2.21: https://github.com/apache/maven-surefire/commit/7176d3c17b438c60e48a525ef96e6812f00bec46 . Please correct me if I am wrong tibor17

           

          We cannot easily update to 3.0.0-M1 (see https://github.com/jenkinsci/plugin-pom/pull/131 from jglick), but probably we could pick up the 2.21 patch in Plugin POM. CC batmat

          Oleg Nenashev added a comment - According to https://github.com/junit-team/junit5/issues/855  , this is actually a valid issue in Maven Surefire Plugin which is fixed in 2.21: https://github.com/apache/maven-surefire/commit/7176d3c17b438c60e48a525ef96e6812f00bec46  . Please correct me if I am wrong tibor17   We cannot easily update to 3.0.0-M1 (see https://github.com/jenkinsci/plugin-pom/pull/131  from jglick ), but probably we could pick up the 2.21 patch in Plugin POM. CC batmat
          Oleg Nenashev made changes -
          Labels New: java11 java11-devtools-compatibility
          Oleg Nenashev made changes -
          Summary Original: PCT crashes on Java 11 in Docker due to SUREFIRE-1496 New: PCT crashes on Java 11 in Docker on Maven Surefire 2.20
          Oleg Nenashev made changes -
          Link New: This issue relates to JENKINS-55147 [ JENKINS-55147 ]

          Tibor Digana added a comment -

          oleg_nenashev
          For the external users it must be very uncertain to read if we mix unrelated issues.
          Yes, SUREFIRE-855 was fixed in 2.21.0.
          The another issue https://issues.apache.org/jira/browse/SUREFIRE-1496 is about Jigsaw modularity, see my comment in SUREFIRE-1496.
          And third unrelated cause error is in your description in this issue:
          Caused by: java.util.zip.ZipException: zip END header not found
          The Surefire is not packaging classes in JAR file. It is the responsibility of maven-jar-plugin.
          Please see the release 3.1.1 of JAR Plugin we did yesterday, I guess.
          https://issues.apache.org/jira/browse/MJAR-241
          After seen deeper, the path is pointing to JDK, this means the file /pct/jdk11-libs/javax.activation.jar and I would say that Oracle or OpenJDK has to be asked.

          Check it out again with new version of JAR Plugin and possibly Surefire plugin 3.0.0-M2, but you may try to also switch to another JDK to come over the ZIP error.

          Tibor Digana added a comment - oleg_nenashev For the external users it must be very uncertain to read if we mix unrelated issues. Yes, SUREFIRE-855 was fixed in 2.21.0 . The another issue https://issues.apache.org/jira/browse/SUREFIRE-1496 is about Jigsaw modularity, see my comment in SUREFIRE-1496. And third unrelated cause error is in your description in this issue: Caused by: java.util.zip.ZipException: zip END header not found The Surefire is not packaging classes in JAR file. It is the responsibility of maven-jar-plugin . Please see the release 3.1.1 of JAR Plugin we did yesterday, I guess. https://issues.apache.org/jira/browse/MJAR-241 After seen deeper, the path is pointing to JDK, this means the file /pct/jdk11-libs/javax.activation.jar and I would say that Oracle or OpenJDK has to be asked. Check it out again with new version of JAR Plugin and possibly Surefire plugin 3.0.0-M2, but you may try to also switch to another JDK to come over the ZIP error.

          Oleg Nenashev added a comment -

          tibor17 thanks for the clarification!

          Oleg Nenashev added a comment - tibor17 thanks for the clarification!

            alecharp Adrien Lecharpentier
            oleg_nenashev Oleg Nenashev
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: