SimpleProcessTest
|
100%
successful |
Tests
| Test | Duration | Result |
|---|---|---|
| currentProcessWorkingDir() | 0.240s | passed |
| customExecutor() | 0.020s | passed |
| customLogLevel() | 0.016s | passed |
| destroyForcibly() | 0.024s | passed |
| destroyForciblyWaitForTermination() | 0.019s | passed |
| destroyTerminatesProcess() | 0.016s | passed |
| destroyTerminatesProcessWaitForTermination() | 0.017s | passed |
| processExitNonZero() | 0.037s | passed |
| processExitZero() | 0.015s | passed |
| processWritesMultipleLinesToStdOut() | 0.027s | passed |
| processWritesToStdErr() | 0.023s | passed |
| processWritesToStdOut() | 0.016s | passed |
| processWritesToStdOutAndStdErr() | 0.017s | passed |
| processWritesToStdOutWithoutTrailingNewline() | 0.009s | passed |
| redirectErrorStream() | 0.016s | passed |
| startingFails() | 0.010s | passed |
| streamConsumerCloseTimeout() | 0.013s | passed |
| waitForTerminationDoesNotDestroyProcess() | 0.021s | passed |
| waitForTerminationWithCorrectExpectedExitCode() | 0.022s | passed |
| waitForTerminationWithTimeout() | 0.012s | passed |
| waitForTerminationWithWrongExpectedExitCode() | 0.017s | passed |
| waitForTerminationWithoutTimeout() | 0.025s | passed |
| workingDirDefined(Path) | 0.060s | passed |
| workingDirNull() | 0.028s | passed |
Standard error
2026-01-29 10:12:55.337 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2599 in background... 2026-01-29 10:12:55.378 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2599... 2026-01-29 10:12:55.380 [FINE ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2599:stdOut> /home/runner/work/simple-process/simple-process 2026-01-29 10:12:55.380 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2599... 2026-01-29 10:12:55.382 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2599 finished 2026-01-29 10:12:55.381 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2599 finished 2026-01-29 10:12:55.380 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2599 (command 'pwd') to terminate... 2026-01-29 10:12:55.386 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2599 to close 2026-01-29 10:12:55.388 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2599 closed 2026-01-29 10:12:55.389 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2599 to close 2026-01-29 10:12:55.392 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2599 closed 2026-01-29 10:12:55.543 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2603 in background... 2026-01-29 10:12:55.548 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2603... 2026-01-29 10:12:55.549 [FINE ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2603:stdOut> /home/runner/work/simple-process/simple-process 2026-01-29 10:12:55.550 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2603 finished 2026-01-29 10:12:55.551 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2603 (command 'pwd') to terminate... 2026-01-29 10:12:55.551 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2603 to close 2026-01-29 10:12:55.552 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2603 closed 2026-01-29 10:12:55.552 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2603 to close 2026-01-29 10:12:55.556 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2603... 2026-01-29 10:12:55.556 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2603 finished 2026-01-29 10:12:55.559 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2603 closed 2026-01-29 10:12:55.570 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2606 in background... 2026-01-29 10:12:55.574 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2606... 2026-01-29 10:12:55.575 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting PT0.003S for process 2606 (command 'sh -c echo 'hello world' >&2') to terminate... 2026-01-29 10:12:55.576 [FINEST ] org.itsallcode.process.SimpleProcess waitForTermination org.itsallcode.process.SimpleProcess Process 2606 (command 'sh -c echo 'hello world' >&2') terminated with exit code 0 2026-01-29 10:12:55.576 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2606 to close 2026-01-29 10:12:55.575 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2606 finished 2026-01-29 10:12:55.580 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2606 closed 2026-01-29 10:12:55.576 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2606... 2026-01-29 10:12:55.584 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2606 to close 2026-01-29 10:12:55.584 [FINE ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2606:stdErr> hello world 2026-01-29 10:12:55.585 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2606 finished 2026-01-29 10:12:55.586 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2606 closed 2026-01-29 10:12:55.595 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2609 in background... 2026-01-29 10:12:55.597 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2609... 2026-01-29 10:12:55.598 [FINE ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2609:stdOut> hello world 2026-01-29 10:12:55.598 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2609 (command 'echo hello world') to terminate... 2026-01-29 10:12:55.598 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2609... 2026-01-29 10:12:55.599 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2609 to close 2026-01-29 10:12:55.598 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2609 finished 2026-01-29 10:12:55.599 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2609 finished 2026-01-29 10:12:55.602 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2609 closed 2026-01-29 10:12:55.602 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2609 to close 2026-01-29 10:12:55.603 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2609 closed 2026-01-29 10:12:55.617 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2612 in background... 2026-01-29 10:12:55.623 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2612... 2026-01-29 10:12:55.624 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2612... 2026-01-29 10:12:55.625 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2612 finished 2026-01-29 10:12:55.624 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2612 finished 2026-01-29 10:12:55.625 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting PT0.003S for process 2612 (command 'false') to terminate... 2026-01-29 10:12:55.628 [FINEST ] org.itsallcode.process.SimpleProcess waitForTermination org.itsallcode.process.SimpleProcess Process 2612 (command 'false') terminated with exit code 1 2026-01-29 10:12:55.628 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2612 to close 2026-01-29 10:12:55.628 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2612 closed 2026-01-29 10:12:55.629 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2612 to close 2026-01-29 10:12:55.629 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2612 closed 2026-01-29 10:12:55.649 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2615 in background... 2026-01-29 10:12:55.651 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2615... 2026-01-29 10:12:55.652 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2615... 2026-01-29 10:12:55.653 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Reading stream 'stdErr' of process 2615 failed: Stream closed java.io.IOException: Stream closed at java.base/java.io.BufferedInputStream.getBufIfOpen(BufferedInputStream.java:168) at java.base/java.io.BufferedInputStream.read(BufferedInputStream.java:334) at java.base/sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:287) at java.base/sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:330) at java.base/sun.nio.cs.StreamDecoder.read(StreamDecoder.java:190) at java.base/java.io.InputStreamReader.read(InputStreamReader.java:177) at java.base/java.io.BufferedReader.fill(BufferedReader.java:162) at java.base/java.io.BufferedReader.readLine(BufferedReader.java:329) at java.base/java.io.BufferedReader.readLine(BufferedReader.java:396) at org.itsallcode.process.AsyncStreamConsumer.run(AsyncStreamConsumer.java:28) at java.base/java.lang.Thread.run(Thread.java:840) 2026-01-29 10:12:55.652 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Reading stream 'stdOut' of process 2615 failed: Stream closed java.io.IOException: Stream closed at java.base/java.io.BufferedInputStream.getBufIfOpen(BufferedInputStream.java:168) at java.base/java.io.BufferedInputStream.read(BufferedInputStream.java:334) at java.base/sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:287) at java.base/sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:330) at java.base/sun.nio.cs.StreamDecoder.read(StreamDecoder.java:190) at java.base/java.io.InputStreamReader.read(InputStreamReader.java:177) at java.base/java.io.BufferedReader.fill(BufferedReader.java:162) at java.base/java.io.BufferedReader.readLine(BufferedReader.java:329) at java.base/java.io.BufferedReader.readLine(BufferedReader.java:396) at org.itsallcode.process.AsyncStreamConsumer.run(AsyncStreamConsumer.java:28) at java.base/java.lang.Thread.run(Thread.java:840) 2026-01-29 10:12:55.652 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2615 (command 'sleep 1') to terminate... 2026-01-29 10:12:55.659 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2615 to close 2026-01-29 10:12:55.659 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2615 closed 2026-01-29 10:12:55.659 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2615 to close 2026-01-29 10:12:55.660 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2615 closed 2026-01-29 10:12:55.666 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2618 in background... 2026-01-29 10:12:55.667 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2618... 2026-01-29 10:12:55.667 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2618... 2026-01-29 10:12:55.668 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting PT0.01S for process 2618 (command 'sleep 1') to terminate... 2026-01-29 10:12:55.687 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2621 in background... 2026-01-29 10:12:55.688 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2621... 2026-01-29 10:12:55.688 [FINE ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2621:stdOut> hello world 2026-01-29 10:12:55.689 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2621 finished 2026-01-29 10:12:55.690 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2621 (command 'echo -n hello world') to terminate... 2026-01-29 10:12:55.691 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2621 to close 2026-01-29 10:12:55.691 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2621 closed 2026-01-29 10:12:55.691 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2621 to close 2026-01-29 10:12:55.691 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2621... 2026-01-29 10:12:55.692 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2621 finished 2026-01-29 10:12:55.693 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2621 closed 2026-01-29 10:12:55.699 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2625 in background... 2026-01-29 10:12:55.701 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2625... 2026-01-29 10:12:55.701 [FINE ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2625:stdOut> hello 2026-01-29 10:12:55.702 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2625 finished 2026-01-29 10:12:55.706 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2625... 2026-01-29 10:12:55.707 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2625 finished 2026-01-29 10:12:55.713 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2625 (command 'echo hello') to terminate... 2026-01-29 10:12:55.714 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2625 to close 2026-01-29 10:12:55.715 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2625 closed 2026-01-29 10:12:55.715 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2625 to close 2026-01-29 10:12:55.716 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2625 closed 2026-01-29 10:12:55.730 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2628 in background... 2026-01-29 10:12:55.732 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2628... 2026-01-29 10:12:55.733 [INFO ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2628:stdOut> hello world 2026-01-29 10:12:55.733 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2628 finished 2026-01-29 10:12:55.735 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2628 (command 'echo hello world') to terminate... 2026-01-29 10:12:55.735 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2628... 2026-01-29 10:12:55.736 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2628 finished 2026-01-29 10:12:55.735 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2628 to close 2026-01-29 10:12:55.736 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2628 closed 2026-01-29 10:12:55.737 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2628 to close 2026-01-29 10:12:55.737 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2628 closed 2026-01-29 10:12:55.750 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2631 in background... 2026-01-29 10:12:55.752 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2631 (command 'echo hello world') to terminate... 2026-01-29 10:12:55.753 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2631... 2026-01-29 10:12:55.754 [FINE ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2631:stdOut> hello world 2026-01-29 10:12:55.755 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2631 to close 2026-01-29 10:12:55.755 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2631 finished 2026-01-29 10:12:55.756 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2631... 2026-01-29 10:12:55.758 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2631 finished 2026-01-29 10:12:55.759 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2631 closed 2026-01-29 10:12:55.759 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2631 to close 2026-01-29 10:12:55.759 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2631 closed 2026-01-29 10:12:55.769 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2633 in background... 2026-01-29 10:12:55.772 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2633... 2026-01-29 10:12:55.773 [FINE ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2633:stdOut> 2: std out 2026-01-29 10:12:55.774 [FINE ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2633:stdOut> 4: std out 2026-01-29 10:12:55.774 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2633 finished 2026-01-29 10:12:55.775 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting PT0.003S for process 2633 (command 'sh -c echo '1: std err' >&2 && echo '2: std out' && echo '3: std err' >&2 && echo '4: std out'') to terminate... 2026-01-29 10:12:55.775 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2633... 2026-01-29 10:12:55.776 [FINE ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2633:stdErr> 1: std err 2026-01-29 10:12:55.776 [FINE ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2633:stdErr> 3: std err 2026-01-29 10:12:55.776 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2633 finished 2026-01-29 10:12:55.775 [FINEST ] org.itsallcode.process.SimpleProcess waitForTermination org.itsallcode.process.SimpleProcess Process 2633 (command 'sh -c echo '1: std err' >&2 && echo '2: std out' && echo '3: std err' >&2 && echo '4: std out'') terminated with exit code 0 2026-01-29 10:12:55.777 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2633 to close 2026-01-29 10:12:55.777 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2633 closed 2026-01-29 10:12:55.777 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2633 to close 2026-01-29 10:12:55.778 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2633 closed 2026-01-29 10:12:55.785 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2636 in background... 2026-01-29 10:12:55.787 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting PT0.003S for process 2636 (command 'true') to terminate... 2026-01-29 10:12:55.788 [FINEST ] org.itsallcode.process.SimpleProcess waitForTermination org.itsallcode.process.SimpleProcess Process 2636 (command 'true') terminated with exit code 0 2026-01-29 10:12:55.787 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2636... 2026-01-29 10:12:55.789 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2636 finished 2026-01-29 10:12:55.789 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2636 to close 2026-01-29 10:12:55.788 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2636... 2026-01-29 10:12:55.790 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2636 closed 2026-01-29 10:12:55.790 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2636 finished 2026-01-29 10:12:55.790 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2636 to close 2026-01-29 10:12:55.796 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2636 closed 2026-01-29 10:12:55.815 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2640 in background... 2026-01-29 10:12:55.818 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2640... 2026-01-29 10:12:55.818 [FINE ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2640:stdOut> 1: std err 2026-01-29 10:12:55.819 [FINE ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2640:stdOut> 2: std out 2026-01-29 10:12:55.818 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting PT0.003S for process 2640 (command 'sh -c echo '1: std err' >&2 && echo '2: std out' && echo '3: std err' >&2 && echo '4: std out'') to terminate... 2026-01-29 10:12:55.819 [FINEST ] org.itsallcode.process.SimpleProcess waitForTermination org.itsallcode.process.SimpleProcess Process 2640 (command 'sh -c echo '1: std err' >&2 && echo '2: std out' && echo '3: std err' >&2 && echo '4: std out'') terminated with exit code 0 2026-01-29 10:12:55.819 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2640 to close 2026-01-29 10:12:55.819 [FINE ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2640:stdOut> 3: std err 2026-01-29 10:12:55.821 [FINE ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2640:stdOut> 4: std out 2026-01-29 10:12:55.821 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2640 finished 2026-01-29 10:12:55.818 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2640... 2026-01-29 10:12:55.823 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2640 finished 2026-01-29 10:12:55.823 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2640 closed 2026-01-29 10:12:55.824 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2640 to close 2026-01-29 10:12:55.824 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2640 closed 2026-01-29 10:12:55.835 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2643 in background... 2026-01-29 10:12:55.837 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2643... 2026-01-29 10:12:55.837 [FINE ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2643:stdOut> line 1 2026-01-29 10:12:55.838 [FINE ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2643:stdOut> line 2 2026-01-29 10:12:55.838 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2643 finished 2026-01-29 10:12:55.849 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2643 (command 'sh -c echo 'line 1' && echo 'line 2'') to terminate... 2026-01-29 10:12:55.850 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2643 to close 2026-01-29 10:12:55.850 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2643 closed 2026-01-29 10:12:55.850 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2643 to close 2026-01-29 10:12:55.849 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2643... 2026-01-29 10:12:55.852 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2643 finished 2026-01-29 10:12:55.852 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2643 closed 2026-01-29 10:12:55.860 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2646 in background... 2026-01-29 10:12:55.862 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2646... 2026-01-29 10:12:55.862 [FINE ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2646:stdOut> hello world 2026-01-29 10:12:55.862 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2646 finished 2026-01-29 10:12:55.864 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2646... 2026-01-29 10:12:55.865 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2646 finished 2026-01-29 10:12:55.864 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2646 (command 'echo hello world') to terminate... 2026-01-29 10:12:55.865 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT3S for stream 'stdOut' of process 2646 to close 2026-01-29 10:12:55.866 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2646 closed 2026-01-29 10:12:55.866 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT3S for stream 'stdErr' of process 2646 to close 2026-01-29 10:12:55.866 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2646 closed 2026-01-29 10:12:55.870 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2649 in background... 2026-01-29 10:12:55.871 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2649... 2026-01-29 10:12:55.872 [FINE ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2649:stdOut> hello world 2026-01-29 10:12:55.871 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting PT0.003S for process 2649 (command 'echo hello world') to terminate... 2026-01-29 10:12:55.873 [FINEST ] org.itsallcode.process.SimpleProcess waitForTermination org.itsallcode.process.SimpleProcess Process 2649 (command 'echo hello world') terminated with exit code 0 2026-01-29 10:12:55.873 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2649 to close 2026-01-29 10:12:55.874 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2649 finished 2026-01-29 10:12:55.872 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2649... 2026-01-29 10:12:55.874 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2649 finished 2026-01-29 10:12:55.876 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2649 closed 2026-01-29 10:12:55.876 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2649 to close 2026-01-29 10:12:55.879 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2649 closed 2026-01-29 10:12:55.883 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2652 in background... 2026-01-29 10:12:55.886 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2652... 2026-01-29 10:12:55.893 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting PT0.01S for process 2652 (command 'sleep 1') to terminate... 2026-01-29 10:12:55.894 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2652... 2026-01-29 10:12:55.894 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Reading stream 'stdErr' of process 2652 failed: Stream closed java.io.IOException: Stream closed at java.base/java.io.BufferedInputStream.getBufIfOpen(BufferedInputStream.java:168) at java.base/java.io.BufferedInputStream.read(BufferedInputStream.java:334) at java.base/sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:287) at java.base/sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:330) at java.base/sun.nio.cs.StreamDecoder.read(StreamDecoder.java:190) at java.base/java.io.InputStreamReader.read(InputStreamReader.java:177) at java.base/java.io.BufferedReader.fill(BufferedReader.java:162) at java.base/java.io.BufferedReader.readLine(BufferedReader.java:329) at java.base/java.io.BufferedReader.readLine(BufferedReader.java:396) at org.itsallcode.process.AsyncStreamConsumer.run(AsyncStreamConsumer.java:28) at java.base/java.lang.Thread.run(Thread.java:840) 2026-01-29 10:12:55.900 [FINEST ] org.itsallcode.process.SimpleProcess waitForTermination org.itsallcode.process.SimpleProcess Process 2652 (command 'sleep 1') terminated with exit code 137 2026-01-29 10:12:55.900 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2652 to close 2026-01-29 10:12:55.901 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2652 finished 2026-01-29 10:12:55.904 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2652 closed 2026-01-29 10:12:55.904 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2652 to close 2026-01-29 10:12:55.904 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2652 closed 2026-01-29 10:12:55.911 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2655 in background... 2026-01-29 10:12:55.915 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2655... 2026-01-29 10:12:55.918 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2655 (command 'sleep 1') to terminate... 2026-01-29 10:12:55.918 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2655... 2026-01-29 10:12:55.919 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Reading stream 'stdErr' of process 2655 failed: Stream closed java.io.IOException: Stream closed at java.base/java.io.BufferedInputStream.getBufIfOpen(BufferedInputStream.java:168) at java.base/java.io.BufferedInputStream.read(BufferedInputStream.java:334) at java.base/sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:287) at java.base/sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:330) at java.base/sun.nio.cs.StreamDecoder.read(StreamDecoder.java:190) at java.base/java.io.InputStreamReader.read(InputStreamReader.java:177) at java.base/java.io.BufferedReader.fill(BufferedReader.java:162) at java.base/java.io.BufferedReader.readLine(BufferedReader.java:329) at java.base/java.io.BufferedReader.readLine(BufferedReader.java:396) at org.itsallcode.process.AsyncStreamConsumer.run(AsyncStreamConsumer.java:28) at java.base/java.lang.Thread.run(Thread.java:840) 2026-01-29 10:12:55.921 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2655 finished 2026-01-29 10:12:55.924 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2655 to close 2026-01-29 10:12:55.924 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2655 closed 2026-01-29 10:12:55.924 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2655 to close 2026-01-29 10:12:55.924 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2655 closed 2026-01-29 10:12:55.933 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2658 in background... 2026-01-29 10:12:55.934 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2658... 2026-01-29 10:12:55.936 [FINE ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2658:stdOut> hello 2026-01-29 10:12:55.936 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2658 finished 2026-01-29 10:12:55.935 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2658... 2026-01-29 10:12:55.938 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2658 finished 2026-01-29 10:12:55.935 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2658 (command 'echo hello') to terminate... 2026-01-29 10:12:55.940 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2658 to close 2026-01-29 10:12:55.940 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2658 closed 2026-01-29 10:12:55.940 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2658 to close 2026-01-29 10:12:55.941 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2658 closed 2026-01-29 10:12:55.953 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2661 in background... 2026-01-29 10:12:55.955 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2661... 2026-01-29 10:12:55.957 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting PT0.01S for process 2661 (command 'sleep 1') to terminate... 2026-01-29 10:12:55.957 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2661... 2026-01-29 10:12:55.957 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Reading stream 'stdErr' of process 2661 failed: Stream closed java.io.IOException: Stream closed at java.base/java.io.BufferedInputStream.getBufIfOpen(BufferedInputStream.java:168) at java.base/java.io.BufferedInputStream.read(BufferedInputStream.java:334) at java.base/sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:287) at java.base/sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:330) at java.base/sun.nio.cs.StreamDecoder.read(StreamDecoder.java:190) at java.base/java.io.InputStreamReader.read(InputStreamReader.java:177) at java.base/java.io.BufferedReader.fill(BufferedReader.java:162) at java.base/java.io.BufferedReader.readLine(BufferedReader.java:329) at java.base/java.io.BufferedReader.readLine(BufferedReader.java:396) at org.itsallcode.process.AsyncStreamConsumer.run(AsyncStreamConsumer.java:28) at java.base/java.lang.Thread.run(Thread.java:840) 2026-01-29 10:12:55.958 [FINEST ] org.itsallcode.process.SimpleProcess waitForTermination org.itsallcode.process.SimpleProcess Process 2661 (command 'sleep 1') terminated with exit code 143 2026-01-29 10:12:55.959 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2661 to close 2026-01-29 10:12:55.958 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2661 finished 2026-01-29 10:12:55.959 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2661 closed 2026-01-29 10:12:55.960 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2661 to close 2026-01-29 10:12:55.960 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2661 closed 2026-01-29 10:12:55.976 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2664 in background... 2026-01-29 10:12:55.977 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2664... 2026-01-29 10:12:55.981 [FINE ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2664:stdOut> hello world 2026-01-29 10:12:55.981 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2664 finished 2026-01-29 10:12:55.984 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2664 (command 'echo hello world') to terminate... 2026-01-29 10:12:55.984 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2664... 2026-01-29 10:12:55.984 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2664 to close 2026-01-29 10:12:55.985 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2664 finished 2026-01-29 10:12:55.985 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2664 closed 2026-01-29 10:12:55.985 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2664 to close 2026-01-29 10:12:55.986 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2664 closed 2026-01-29 10:12:56.031 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2667 in background... 2026-01-29 10:12:56.038 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2667... 2026-01-29 10:12:56.038 [FINE ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2667:stdOut> /tmp/junit-15722848524353497154 2026-01-29 10:12:56.039 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2667 finished 2026-01-29 10:12:56.039 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2667 (command 'pwd') to terminate... 2026-01-29 10:12:56.039 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2667... 2026-01-29 10:12:56.039 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2667 to close 2026-01-29 10:12:56.040 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2667 finished 2026-01-29 10:12:56.040 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2667 closed 2026-01-29 10:12:56.040 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2667 to close 2026-01-29 10:12:56.040 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2667 closed