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

Forking fails on Linux if /bin/ps isn't available

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.20.1
    • 2.21.0
    • process forking
    • None
    • Linux (Debian 9 with OpenJDK 8)

    Description

      Hi,

      With the changes introduced by SUREFIRE-1302 I'm now experiencing a failure on Linux when the fork mode is enabled:

      [ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.20.1:test (default-test) on project foo: There are test failures.
      [ERROR]
      [ERROR] Please refer to /foo/target/surefire-reports for the individual test results.
      [ERROR] Please refer to dump files (if any exist) [date]-jvmRun[N].dump, [date].dumpstream and [date]-jvmRun[N].dumpstream.
      [ERROR] The forked VM terminated without properly saying goodbye. VM crash or System.exit called?
      

      I traced the issue back to the PpidChecker class, the code assumes that /bin/ps or /usr/bin/ps exist but this isn't guaranteed (especially on trimmed down containers commonly used for continuous integration).

      It would be nice to have a fallback mechanism when ps isn't available, or at least check its existence and display an explicit message stating that it must be installed.

      Attachments

        Issue Links

          Activity

            People

              tibordigana Tibor Digana
              ebourg Emmanuel Bourg
              Votes:
              2 Vote for this issue
              Watchers:
              11 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: