RFR: 8233725: ProcessTools.startProcess() has output issues when using an OutputAnalyzer at the same time [v2]

David Holmes dholmes at openjdk.org
Thu Apr 20 22:57:45 UTC 2023


On Thu, 20 Apr 2023 22:31:55 GMT, Chris Plummer <cjplummer at openjdk.org> wrote:

>> Leonid Mesnik has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   JStackStressTest.java updated.
>
> test/lib/jdk/test/lib/process/ProcessTools.java line 750:
> 
>> 748:         public InputStream getInputStream() {
>> 749:             try {
>> 750:                 waitFor();
> 
> With this added `waitFor()` the assumption now is that the caller doesn't intent to do incremental reads of the output as the process generates it. For example, if the test were to send some command to the process and then want to read the resulting output, and do this repeatedly, it won't able to use the InputStream to do that.

I have to agree with Chris. You are changing a fundamental property of this API. We no longer just start the process, we are forced to wait for it to complete.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/13560#discussion_r1173158259


More information about the core-libs-dev mailing list