Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Duplicate
-
2.8
-
None
-
None
-
64 bit RHEL 5.5 , 64-bit Java 1.6.0_23
Description
Our forked JUnit/surefire processes are not always stopping correctly when timing out within a Maven build
(running inside our Jenkins CI server, ver 1.425).
The maven build finishes and Jenkins shows a failed/unstable build.
These running processes cause problems later, because the tests may be holding a resource like a port, and subsequent rebuilds fail because the
tests fail.
For example, even though no Maven builds are currently running, ps shows about a dozen Java processes running,
with commands such as:
/usr/local/java-1.6_23/jre/bin/java -Xms1g -Xmx5g -Djava.library.path=/u/jenkinsci/.hudson/jobs/rtolap.jtt.tests/workspace/target/lib \ -jar /u/jenkinsci/.hudson/jobs/rtolap.jtt.tests/workspace/target/surefire/surefirebooter1374560535780866887.jar \ /u/jenkinsci/.hudson/jobs/rtolap.jtt.tests/workspace/target/surefire/surefire65313... /usr/local/java-1.6_23/jre/bin/java -Xmx2g -Xms1g -Djava.library.path=/u/jenkinsci/.hudson/jobs/rtolap/workspace/target/lib \ -jar /u/jenkinsci/.hudson/jobs/rtolap/workspace/target/surefire/surefirebooter6814971258434039335.jar \ /u/jenkinsci/.hudson/jobs/rtolap/workspace/target/surefire/surefire5806103969370259371tmp /u/jenkinsci/... ...
We have our Maven surefire preferences set to fork the tests (via a parent pom)
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.8</version> <configuration> <forkMode>once</forkMode> <forkedProcessTimeoutInSeconds>720</forkedProcessTimeoutInSeconds> </configuration> </plugin>
I suspect the timeout is the problem - i.e. perhaps the test is timing out and the attempt to kill the forked process
fails, leaving it running.
Has anyone seen something similar and/or know how to fix this so that surefire really kills the process?
When this happens, doing
kill <processid>
(logged in as the process owner) usually does not work, but
kill -9 <processid>
does.
Attachments
Issue Links
- duplicates
-
SUREFIRE-524 Forked Process not terminated if maven process aborted. Provide means to clean up.
- Closed
- is related to
-
MSHARED-295 Non reliable killing of processes by CommandLineUtils
- Closed