Uploaded image for project: 'Maven Surefire'
  1. Maven Surefire
  2. SUREFIRE-1349

FreeBSD cross process communication needs to commit stdout data in forked JVM within a synchronized block

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.20
    • Component/s: None
    • Labels:
      None

      Description

      In the branch 2.19.2-experimental we discovered that less tests failed on the platform FreeBSD after we flushed stdout. Our old code did this already in some places but some missed this.
      As a negative side effect, closing stream, did not solve anything and stream could not be recovered.
      We were not sure if FreeBSD platform read the JAR file completely due to we did not close ZIP entry properly in JarOutputStream. We did all for finishing stream and we flushed FileOutputStream due to close() method does not explicitly flush stream, however flush/close contract is not documented, it's just sort of a known implicit behavior in Oracle's JRE that people generally trust. In specific cases where you know you need to call flush() before close() as been JRE platform independent.

        Activity

        Hide
        hudson Hudson added a comment -

        SUCCESS: Integrated in Jenkins build maven-surefire #1681 (See https://builds.apache.org/job/maven-surefire/1681/)
        SUREFIRE-1349 FreeBSD cross process communication needs to commit (tibor17: http://git-wip-us.apache.org/repos/asf/?p=maven-surefire.git&a=commit&h=67e61b07e35ce2ade82efc8e69240003b28fd83e)

        • (edit) surefire-api/src/main/java/org/apache/maven/surefire/booter/CommandReader.java
        • (edit) maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/booterclient/ForkConfiguration.java
        • (edit) surefire-api/src/main/java/org/apache/maven/surefire/booter/ForkingRunListener.java
        • (edit) surefire-booter/src/main/java/org/apache/maven/surefire/booter/ForkedBooter.java
        Show
        hudson Hudson added a comment - SUCCESS: Integrated in Jenkins build maven-surefire #1681 (See https://builds.apache.org/job/maven-surefire/1681/ ) SUREFIRE-1349 FreeBSD cross process communication needs to commit (tibor17: http://git-wip-us.apache.org/repos/asf/?p=maven-surefire.git&a=commit&h=67e61b07e35ce2ade82efc8e69240003b28fd83e ) (edit) surefire-api/src/main/java/org/apache/maven/surefire/booter/CommandReader.java (edit) maven-surefire-common/src/main/java/org/apache/maven/plugin/surefire/booterclient/ForkConfiguration.java (edit) surefire-api/src/main/java/org/apache/maven/surefire/booter/ForkingRunListener.java (edit) surefire-booter/src/main/java/org/apache/maven/surefire/booter/ForkedBooter.java
        Show
        tibor17 Tibor Digana added a comment - https://git-wip-us.apache.org/repos/asf?p=maven-surefire.git;a=commit;h=67e61b07e35ce2ade82efc8e69240003b28fd83e

          People

          • Assignee:
            tibor17 Tibor Digana
            Reporter:
            tibor17 Tibor Digana
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development