apache / apache/maven-surefire
[SUREFIRE-1524] PpidChecker sometimes writes dump file with IOException
- Dominant language
- Java
- Stars
- 461
- Forks
- 588
- Avg merge
- 1d 8h
- Merged PRs (30d)
- 19
Description
**[Dan Berindei](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=dan.berindei)** opened **[SUREFIRE-1524](https://issues.apache.org/jira/browse/SUREFIRE-1524?redirect=false)** and commented
We have a build with lots of modules, and once in a while we see a dump file like this after the build:
```
./commons/target/surefire-reports/2018-05-26T05-53-09_562-jvmRun1.dump
1. Created on 2018-05-26T05:53:16.823
java.io.IOException: Stream closed
at java.base/java.io.BufferedInputStream.getBufIfOpen(BufferedInputStream.java:176)
at java.base/java.io.BufferedInputStream.read1(BufferedInputStream.java:289)
at java.base/java.io.BufferedInputStream.read(BufferedInputStream.java:351)
at java.base/sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:284)
at java.base/sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:326)
at java.base/sun.nio.cs.StreamDecoder.read(StreamDecoder.java:178)
at java.base/java.io.InputStreamReader.read(InputStreamReader.java:185)
at java.base/java.io.Reader.read(Reader.java:104)
at java.base/java.util.Scanner.readInput(Scanner.java:882)
at java.base/java.util.Scanner.findWithinHorizon(Scanner.java:1796)
at java.base/java.util.Scanner.hasNextLine(Scanner.java:1610)
at org.apache.maven.surefire.booter.PpidChecker$ProcessInfoConsumer.execute(PpidChecker.java:301)
at org.apache.maven.surefire.booter.PpidChecker.unix(PpidChecker.java:160)
at org.apache.maven.surefire.booter.PpidChecker.isProcessAlive(PpidChecker.java:115)
at org.apache.maven.surefire.booter.ForkedBooter$2.run(ForkedBooter.java:213)
<...>
1. Created on 2018-05-26T05:53:16.827
System.exit() or native command error interrupted process checker.
```
Looks like it's safe to ignore both messages, but it would be better if they weren't logged at all.
---
**Affects:** 2.21.0
Contributor guide
Research direction
Start with org.apache.maven.surefire.booter.PpidChecker, especially unix(PpidChecker.java:160), isProcessAlive(PpidChecker.java:115), and ProcessInfoConsumer.execute(PpidChecker.java:301) from the reported stack trace. Reproduce the affected multi-module build if possible, then verify that expected stream-closed and process-checker interruption messages are no longer logged or written to dump files.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- build-system, tooling
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100