SimpleProcessTest

24

tests

0

failures

0

ignored

0.579s

duration

100%

successful

Tests

Test Duration Result
currentProcessWorkingDir() 0.198s passed
customExecutor() 0.014s passed
customLogLevel() 0.011s passed
destroyForcibly() 0.015s passed
destroyForciblyWaitForTermination() 0.013s passed
destroyTerminatesProcess() 0.013s passed
destroyTerminatesProcessWaitForTermination() 0.017s passed
processExitNonZero() 0.022s passed
processExitZero() 0.010s passed
processWritesMultipleLinesToStdOut() 0.014s passed
processWritesToStdErr() 0.012s passed
processWritesToStdOut() 0.009s passed
processWritesToStdOutAndStdErr() 0.016s passed
processWritesToStdOutWithoutTrailingNewline() 0.009s passed
redirectErrorStream() 0.014s passed
startingFails() 0.003s passed
streamConsumerCloseTimeout() 0.014s passed
waitForTerminationDoesNotDestroyProcess() 0.023s passed
waitForTerminationWithCorrectExpectedExitCode() 0.021s passed
waitForTerminationWithTimeout() 0.017s passed
waitForTerminationWithWrongExpectedExitCode() 0.016s passed
waitForTerminationWithoutTimeout() 0.014s passed
workingDirDefined(Path) 0.061s passed
workingDirNull() 0.023s passed

Standard error

2025-11-18 07:39:10.669 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2592 in background...
2025-11-18 07:39:10.689 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2592...
2025-11-18 07:39:10.689 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2592...
2025-11-18 07:39:10.689 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2592 (command 'pwd') to terminate...
2025-11-18 07:39:10.693 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2592 to close
2025-11-18 07:39:10.692 [FINE   ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2592:stdOut> /home/runner/work/simple-process/simple-process
2025-11-18 07:39:10.695 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2592 finished
2025-11-18 07:39:10.690 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2592 finished
2025-11-18 07:39:10.696 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2592 closed
2025-11-18 07:39:10.697 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2592 to close
2025-11-18 07:39:10.698 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2592 closed
2025-11-18 07:39:10.837 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2596 in background...
2025-11-18 07:39:10.839 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2596...
2025-11-18 07:39:10.842 [FINE   ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2596:stdOut> /home/runner/work/simple-process/simple-process
2025-11-18 07:39:10.840 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2596...
2025-11-18 07:39:10.845 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2596 finished
2025-11-18 07:39:10.840 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2596 (command 'pwd') to terminate...
2025-11-18 07:39:10.846 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2596 to close
2025-11-18 07:39:10.847 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2596 finished
2025-11-18 07:39:10.848 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2596 closed
2025-11-18 07:39:10.849 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2596 to close
2025-11-18 07:39:10.850 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2596 closed
2025-11-18 07:39:10.856 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2599 in background...
2025-11-18 07:39:10.858 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2599...
2025-11-18 07:39:10.859 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2599 finished
2025-11-18 07:39:10.859 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2599...
2025-11-18 07:39:10.859 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting PT0.003S for process 2599 (command 'sh -c echo 'hello world' >&2') to terminate...
2025-11-18 07:39:10.860 [FINEST ] org.itsallcode.process.SimpleProcess waitForTermination org.itsallcode.process.SimpleProcess Process 2599 (command 'sh -c echo 'hello world' >&2') terminated with exit code 0
2025-11-18 07:39:10.861 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2599 to close
2025-11-18 07:39:10.861 [FINE   ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2599:stdErr> hello world
2025-11-18 07:39:10.862 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2599 finished
2025-11-18 07:39:10.861 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2599 closed
2025-11-18 07:39:10.863 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2599 to close
2025-11-18 07:39:10.864 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2599 closed
2025-11-18 07:39:10.868 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2602 in background...
2025-11-18 07:39:10.869 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2602...
2025-11-18 07:39:10.870 [FINE   ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2602:stdOut> hello world
2025-11-18 07:39:10.870 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2602 finished
2025-11-18 07:39:10.871 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2602 (command 'echo hello world') to terminate...
2025-11-18 07:39:10.871 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2602...
2025-11-18 07:39:10.871 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2602 to close
2025-11-18 07:39:10.872 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2602 closed
2025-11-18 07:39:10.872 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2602 to close
2025-11-18 07:39:10.873 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2602 finished
2025-11-18 07:39:10.874 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2602 closed
2025-11-18 07:39:10.879 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2605 in background...
2025-11-18 07:39:10.882 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2605...
2025-11-18 07:39:10.882 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2605 finished
2025-11-18 07:39:10.886 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting PT0.003S for process 2605 (command 'false') to terminate...
2025-11-18 07:39:10.886 [FINEST ] org.itsallcode.process.SimpleProcess waitForTermination org.itsallcode.process.SimpleProcess Process 2605 (command 'false') terminated with exit code 1
2025-11-18 07:39:10.887 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2605 to close
2025-11-18 07:39:10.887 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2605...
2025-11-18 07:39:10.888 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2605 closed
2025-11-18 07:39:10.889 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2605 finished
2025-11-18 07:39:10.889 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2605 to close
2025-11-18 07:39:10.892 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2605 closed
2025-11-18 07:39:10.908 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2608 in background...
2025-11-18 07:39:10.911 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2608...
2025-11-18 07:39:10.912 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2608...
2025-11-18 07:39:10.912 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Reading stream 'stdErr' of process 2608 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)

2025-11-18 07:39:10.912 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2608 (command 'sleep 1') to terminate...
2025-11-18 07:39:10.913 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2608 finished
2025-11-18 07:39:10.917 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2608 to close
2025-11-18 07:39:10.917 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2608 closed
2025-11-18 07:39:10.917 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2608 to close
2025-11-18 07:39:10.918 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2608 closed
2025-11-18 07:39:10.922 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2611 in background...
2025-11-18 07:39:10.924 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2611...
2025-11-18 07:39:10.925 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2611...
2025-11-18 07:39:10.925 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting PT0.01S for process 2611 (command 'sleep 1') to terminate...
2025-11-18 07:39:10.946 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2614 in background...
2025-11-18 07:39:10.947 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2614...
2025-11-18 07:39:10.947 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2614 (command 'echo -n hello world') to terminate...
2025-11-18 07:39:10.948 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2614 to close
2025-11-18 07:39:10.947 [FINE   ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2614:stdOut> hello world
2025-11-18 07:39:10.948 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2614 finished
2025-11-18 07:39:10.947 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2614...
2025-11-18 07:39:10.949 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2614 finished
2025-11-18 07:39:10.951 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2614 closed
2025-11-18 07:39:10.951 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2614 to close
2025-11-18 07:39:10.951 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2614 closed
2025-11-18 07:39:10.956 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2618 in background...
2025-11-18 07:39:10.959 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2618...
2025-11-18 07:39:10.960 [FINE   ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2618:stdOut> hello
2025-11-18 07:39:10.960 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2618 finished
2025-11-18 07:39:10.960 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2618...
2025-11-18 07:39:10.962 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2618 finished
2025-11-18 07:39:10.970 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2618 (command 'echo hello') to terminate...
2025-11-18 07:39:10.971 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2618 to close
2025-11-18 07:39:10.972 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2618 closed
2025-11-18 07:39:10.973 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2618 to close
2025-11-18 07:39:10.973 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2618 closed
2025-11-18 07:39:10.979 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2621 in background...
2025-11-18 07:39:10.981 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2621...
2025-11-18 07:39:10.982 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2621 (command 'echo hello world') to terminate...
2025-11-18 07:39:10.984 [INFO   ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2621:stdOut> hello world
2025-11-18 07:39:10.984 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2621...
2025-11-18 07:39:10.985 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2621 finished
2025-11-18 07:39:10.984 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2621 to close
2025-11-18 07:39:10.984 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2621 finished
2025-11-18 07:39:10.985 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2621 closed
2025-11-18 07:39:10.986 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2621 to close
2025-11-18 07:39:10.986 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2621 closed
2025-11-18 07:39:10.994 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2624 in background...
2025-11-18 07:39:10.997 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2624 (command 'echo hello world') to terminate...
2025-11-18 07:39:10.997 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2624...
2025-11-18 07:39:10.998 [FINE   ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2624:stdOut> hello world
2025-11-18 07:39:10.998 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2624 finished
2025-11-18 07:39:10.999 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2624...
2025-11-18 07:39:10.999 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2624 finished
2025-11-18 07:39:10.998 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2624 to close
2025-11-18 07:39:11.000 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2624 closed
2025-11-18 07:39:11.000 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2624 to close
2025-11-18 07:39:11.000 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2624 closed
2025-11-18 07:39:11.007 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2626 in background...
2025-11-18 07:39:11.009 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2626...
2025-11-18 07:39:11.009 [FINE   ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2626:stdOut> 2: std out
2025-11-18 07:39:11.010 [FINE   ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2626:stdOut> 4: std out
2025-11-18 07:39:11.010 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2626 finished
2025-11-18 07:39:11.011 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting PT0.003S for process 2626 (command 'sh -c echo '1: std err' >&2 && echo '2: std out' && echo '3: std err' >&2 && echo '4: std out'') to terminate...
2025-11-18 07:39:11.011 [FINEST ] org.itsallcode.process.SimpleProcess waitForTermination org.itsallcode.process.SimpleProcess Process 2626 (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
2025-11-18 07:39:11.012 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2626 to close
2025-11-18 07:39:11.012 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2626 closed
2025-11-18 07:39:11.012 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2626 to close
2025-11-18 07:39:11.014 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2626...
2025-11-18 07:39:11.014 [FINE   ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2626:stdErr> 1: std err
2025-11-18 07:39:11.014 [FINE   ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2626:stdErr> 3: std err
2025-11-18 07:39:11.015 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2626 finished
2025-11-18 07:39:11.017 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2626 closed
2025-11-18 07:39:11.022 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2630 in background...
2025-11-18 07:39:11.023 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2630...
2025-11-18 07:39:11.023 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2630 finished
2025-11-18 07:39:11.024 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2630...
2025-11-18 07:39:11.024 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2630 finished
2025-11-18 07:39:11.024 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting PT0.003S for process 2630 (command 'true') to terminate...
2025-11-18 07:39:11.026 [FINEST ] org.itsallcode.process.SimpleProcess waitForTermination org.itsallcode.process.SimpleProcess Process 2630 (command 'true') terminated with exit code 0
2025-11-18 07:39:11.026 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2630 to close
2025-11-18 07:39:11.026 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2630 closed
2025-11-18 07:39:11.027 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2630 to close
2025-11-18 07:39:11.027 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2630 closed
2025-11-18 07:39:11.039 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2634 in background...
2025-11-18 07:39:11.042 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2634...
2025-11-18 07:39:11.044 [FINE   ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2634:stdOut> 1: std err
2025-11-18 07:39:11.044 [FINE   ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2634:stdOut> 2: std out
2025-11-18 07:39:11.044 [FINE   ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2634:stdOut> 3: std err
2025-11-18 07:39:11.045 [FINE   ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2634:stdOut> 4: std out
2025-11-18 07:39:11.045 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting PT0.003S for process 2634 (command 'sh -c echo '1: std err' >&2 && echo '2: std out' && echo '3: std err' >&2 && echo '4: std out'') to terminate...
2025-11-18 07:39:11.045 [FINEST ] org.itsallcode.process.SimpleProcess waitForTermination org.itsallcode.process.SimpleProcess Process 2634 (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
2025-11-18 07:39:11.046 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2634 to close
2025-11-18 07:39:11.045 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2634 finished
2025-11-18 07:39:11.045 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2634...
2025-11-18 07:39:11.047 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2634 finished
2025-11-18 07:39:11.047 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2634 closed
2025-11-18 07:39:11.047 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2634 to close
2025-11-18 07:39:11.048 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2634 closed
2025-11-18 07:39:11.054 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2637 in background...
2025-11-18 07:39:11.055 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2637...
2025-11-18 07:39:11.056 [FINE   ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2637:stdOut> line 1
2025-11-18 07:39:11.056 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2637...
2025-11-18 07:39:11.056 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2637 (command 'sh -c echo 'line 1' && echo 'line 2'') to terminate...
2025-11-18 07:39:11.058 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2637 to close
2025-11-18 07:39:11.058 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2637 finished
2025-11-18 07:39:11.058 [FINE   ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2637:stdOut> line 2
2025-11-18 07:39:11.059 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2637 finished
2025-11-18 07:39:11.063 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2637 closed
2025-11-18 07:39:11.063 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2637 to close
2025-11-18 07:39:11.063 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2637 closed
2025-11-18 07:39:11.069 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2640 in background...
2025-11-18 07:39:11.071 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2640...
2025-11-18 07:39:11.071 [FINE   ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2640:stdOut> hello world
2025-11-18 07:39:11.071 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2640...
2025-11-18 07:39:11.071 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2640 finished
2025-11-18 07:39:11.075 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2640 finished
2025-11-18 07:39:11.071 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2640 (command 'echo hello world') to terminate...
2025-11-18 07:39:11.075 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT3S for stream 'stdOut' of process 2640 to close
2025-11-18 07:39:11.075 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2640 closed
2025-11-18 07:39:11.076 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT3S for stream 'stdErr' of process 2640 to close
2025-11-18 07:39:11.077 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2640 closed
2025-11-18 07:39:11.083 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2643 in background...
2025-11-18 07:39:11.085 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2643...
2025-11-18 07:39:11.085 [FINE   ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2643:stdOut> hello world
2025-11-18 07:39:11.086 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2643 finished
2025-11-18 07:39:11.087 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting PT0.003S for process 2643 (command 'echo hello world') to terminate...
2025-11-18 07:39:11.087 [FINEST ] org.itsallcode.process.SimpleProcess waitForTermination org.itsallcode.process.SimpleProcess Process 2643 (command 'echo hello world') terminated with exit code 0
2025-11-18 07:39:11.087 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2643 to close
2025-11-18 07:39:11.087 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2643 closed
2025-11-18 07:39:11.088 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2643 to close
2025-11-18 07:39:11.088 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2643...
2025-11-18 07:39:11.088 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2643 finished
2025-11-18 07:39:11.095 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2643 closed
2025-11-18 07:39:11.100 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2646 in background...
2025-11-18 07:39:11.104 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2646...
2025-11-18 07:39:11.105 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2646...
2025-11-18 07:39:11.105 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Reading stream 'stdErr' of process 2646 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)

2025-11-18 07:39:11.105 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting PT0.01S for process 2646 (command 'sleep 1') to terminate...
2025-11-18 07:39:11.105 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2646 finished
2025-11-18 07:39:11.106 [FINEST ] org.itsallcode.process.SimpleProcess waitForTermination org.itsallcode.process.SimpleProcess Process 2646 (command 'sleep 1') terminated with exit code 137
2025-11-18 07:39:11.110 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2646 to close
2025-11-18 07:39:11.110 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2646 closed
2025-11-18 07:39:11.110 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2646 to close
2025-11-18 07:39:11.110 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2646 closed
2025-11-18 07:39:11.116 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2649 in background...
2025-11-18 07:39:11.119 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2649...
2025-11-18 07:39:11.122 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2649...
2025-11-18 07:39:11.122 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Reading stream 'stdErr' of process 2649 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)

2025-11-18 07:39:11.122 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2649 (command 'sleep 1') to terminate...
2025-11-18 07:39:11.123 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2649 finished
2025-11-18 07:39:11.123 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2649 to close
2025-11-18 07:39:11.123 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2649 closed
2025-11-18 07:39:11.124 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2649 to close
2025-11-18 07:39:11.124 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2649 closed
2025-11-18 07:39:11.134 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2652 in background...
2025-11-18 07:39:11.135 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2652...
2025-11-18 07:39:11.138 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2652 (command 'echo hello') to terminate...
2025-11-18 07:39:11.138 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2652 to close
2025-11-18 07:39:11.139 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2652...
2025-11-18 07:39:11.139 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2652 finished
2025-11-18 07:39:11.139 [FINE   ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2652:stdOut> hello
2025-11-18 07:39:11.139 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2652 finished
2025-11-18 07:39:11.140 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2652 closed
2025-11-18 07:39:11.140 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2652 to close
2025-11-18 07:39:11.140 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2652 closed
2025-11-18 07:39:11.149 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2655 in background...
2025-11-18 07:39:11.151 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2655...
2025-11-18 07:39:11.151 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2655...
2025-11-18 07:39:11.151 [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)

2025-11-18 07:39:11.151 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting PT0.01S for process 2655 (command 'sleep 1') to terminate...
2025-11-18 07:39:11.151 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Reading stream 'stdOut' 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)

2025-11-18 07:39:11.153 [FINEST ] org.itsallcode.process.SimpleProcess waitForTermination org.itsallcode.process.SimpleProcess Process 2655 (command 'sleep 1') terminated with exit code 143
2025-11-18 07:39:11.154 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2655 to close
2025-11-18 07:39:11.154 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2655 closed
2025-11-18 07:39:11.154 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2655 to close
2025-11-18 07:39:11.154 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2655 closed
2025-11-18 07:39:11.160 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2658 in background...
2025-11-18 07:39:11.163 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2658...
2025-11-18 07:39:11.163 [FINE   ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2658:stdOut> hello world
2025-11-18 07:39:11.163 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2658 finished
2025-11-18 07:39:11.165 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2658 (command 'echo hello world') to terminate...
2025-11-18 07:39:11.165 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2658 to close
2025-11-18 07:39:11.165 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2658 closed
2025-11-18 07:39:11.165 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2658 to close
2025-11-18 07:39:11.166 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2658...
2025-11-18 07:39:11.166 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2658 finished
2025-11-18 07:39:11.169 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2658 closed
2025-11-18 07:39:11.204 [FINEST ] org.itsallcode.process.ProcessOutputConsumer start org.itsallcode.process.ProcessOutputConsumer Start reading stdout and stderr streams of process 2661 in background...
2025-11-18 07:39:11.210 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdOut' stream of process 2661...
2025-11-18 07:39:11.210 [FINEST ] org.itsallcode.process.SimpleProcess waitForProcess org.itsallcode.process.SimpleProcess Waiting for process 2661 (command 'pwd') to terminate...
2025-11-18 07:39:11.210 [FINE   ] org.itsallcode.process.StreamLogger accept org.itsallcode.process.StreamLogger 2661:stdOut> /tmp/junit-3281160917320687857
2025-11-18 07:39:11.210 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdOut' of process 2661 to close
2025-11-18 07:39:11.211 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdOut' of process 2661 finished
2025-11-18 07:39:11.213 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Start reading from 'stdErr' stream of process 2661...
2025-11-18 07:39:11.214 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdOut' of process 2661 closed
2025-11-18 07:39:11.217 [FINEST ] org.itsallcode.process.AsyncStreamConsumer run org.itsallcode.process.AsyncStreamConsumer Stream 'stdErr' of process 2661 finished
2025-11-18 07:39:11.217 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Waiting PT1S for stream 'stdErr' of process 2661 to close
2025-11-18 07:39:11.220 [FINEST ] org.itsallcode.process.StreamCloseWaiter waitUntilStreamClosed org.itsallcode.process.StreamCloseWaiter Stream 'stdErr' of process 2661 closed