RFR: 8360401: [AIX] java/lang/ProcessBuilder/FDLeakTest/FDLeakTest.java fails since JDK-8210549

Joachim Kern jkern at openjdk.org
Mon Sep 22 13:13:33 UTC 2025


On Mon, 22 Sep 2025 12:31:47 GMT, Thomas Stuefe <stuefe at openjdk.org> wrote:

>> The new tests
>> java/lang/ProcessBuilder/FDLeakTest/FDLeakTest.java#fork
>> java/lang/ProcessBuilder/FDLeakTest/FDLeakTest.java#posix_spawn
>> fail on AIX.
>> The tests were added with [JDK-8210549](https://bugs.openjdk.org/browse/JDK-8210549) .
>> 
>> Error output is
>> java/lang/ProcessBuilder/FDLeakTest/FDLeakTest.java#fork
>> 
>> Opened and leaked ./testfile_FDLeaker.txt (4)
>> ----------System.err:(13/647)----------
>> *** Parent leaked file descriptor 9 ***
>> *** Parent leaked file descriptor 10 ***
>> java.lang.RuntimeException: Failed
>> at FDLeakTest.main(FDLeakTest.java:69)
>> at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
>> at java.base/java.lang.reflect.Method.invoke(Method.java:565)
>> at com.sun.javatest.regtest.agent.MainWrapper$MainTask.run(MainWrapper.java:138)
>> at java.base/java.lang.Thread.run(Thread.java:1474)
>>  
>>  
>> java/lang/ProcessBuilder/FDLeakTest/FDLeakTest.java#posix_spawn
>> 
>> 
>> ----------System.out:(1/46)----------
>> Opened and leaked ./testfile_FDLeaker.txt (4)
>> ----------System.err:(13/647)----------
>> *** Parent leaked file descriptor 9 ***
>> *** Parent leaked file descriptor 10 ***
>> java.lang.RuntimeException: Failed
>> at FDLeakTest.main(FDLeakTest.java:69)
>> at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
>> at java.base/java.lang.reflect.Method.invoke(Method.java:565)
>> at com.sun.javatest.regtest.agent.MainWrapper$MainTask.run(MainWrapper.java:138)
>> at java.base/java.lang.Thread.run(Thread.java:1474)
>
> src/java.base/unix/native/libjava/childproc.c line 73:
> 
>> 71:   /* The /proc file System in AIX does not contain open system files
>> 72:    * like /dev/random. Therefore we use a different approach and do
>> 73:    * not need isAsciiDigit() or FD_DIR */
> 
> Leave isAsciiDigit in; optionally replace it with https://pubs.opengroup.org/onlinepubs/009696699/functions/isdigit.html . 
> 
> Reduction of ifdefs is more important than avoiding an unnecessary function.

Sorry the compiler forced this:
/data/d042520/FDLeak/jdk/src/java.base/unix/native/libjava/childproc.c:75:1: error: unused function 'isAsciiDigit' [-Werror,-Wunused-function]
   75 | isAsciiDigit(char c)
      | ^~~~~~~~~~~~
1 error generated.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/27291#discussion_r2368321426


More information about the core-libs-dev mailing list