RFR: 8339487: ProcessHandleImpl os_getChildren sysctl call - retry in case of ENOMEM and enhance exception message [v4]

Matthias Baesken mbaesken at openjdk.org
Mon Sep 9 07:06:22 UTC 2024


> When running jtreg test java/lang/ProcessHandle/PermissionTest.java on macOS, a few times this error occurs :
> 
> java.lang.RuntimeException: Cannot allocate memory
>        at java.base/java.lang.ProcessHandleImpl.getProcessPids0(Native Method)
>        at java.base/java.lang.ProcessHandleImpl.children(ProcessHandleImpl.java:456)
>        at java.base/java.lang.ProcessHandleImpl.children(ProcessHandleImpl.java:434)
>        at PermissionTest.childrenWithPermission(PermissionTest.java:84)
>        at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
>        at java.base/java.lang.reflect.Method.invoke(Method.java:573)
>        at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:132)
>        at org.testng.internal.TestInvoker.invokeMethod(TestInvoker.java:599)
>        at org.testng.internal.TestInvoker.invokeTestMethod(TestInvoker.java:174)
>        at org.testng.internal.MethodRunner.runInSequence(MethodRunner.java:46)
>        at org.testng.internal.TestInvoker$MethodInvocationAgent.invoke(TestInvoker.java:822)
>        at org.testng.internal.TestInvoker.invokeTestMethods(TestInvoker.java:147)
>        at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:146)
>        at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:128)
>        at java.base/java.util.ArrayList.forEach(ArrayList.java:1597)
> 
> 
> Probably sysctl fails here, but it is not fully clear; it would help to change the exception so that the standard text is shown too in the exception message.

Matthias Baesken has updated the pull request incrementally with one additional commit since the last revision:

  fix typo

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/20839/files
  - new: https://git.openjdk.org/jdk/pull/20839/files/afc423ad..a8c85318

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=20839&range=03
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20839&range=02-03

  Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod
  Patch: https://git.openjdk.org/jdk/pull/20839.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/20839/head:pull/20839

PR: https://git.openjdk.org/jdk/pull/20839


More information about the core-libs-dev mailing list