-
Enhancement
-
Resolution: Fixed
-
P4
-
21
-
b25
-
generic
-
linux
Currently most of the metrics retrieval logic in Hotspot are implemented around the GET_CONTAINER_INFO macros and corresponding subsystem_file_line_contents() template.
There are a couple of issues with this approach:
- The macros aren't portable, as they use short-return for error cases
- The macros only support string literals for some of its arguments. This prevents usage of the macros when the input isn't a string literal.
- This combination of macro + template make the code harder to read and understand what's going on.
On top of that they prevent further refactoring. For example, introducing generic helper functions for certain sanity checking like was done withJDK-8292083 is harder.
There are a couple of issues with this approach:
- The macros aren't portable, as they use short-return for error cases
- The macros only support string literals for some of its arguments. This prevents usage of the macros when the input isn't a string literal.
- This combination of macro + template make the code harder to read and understand what's going on.
On top of that they prevent further refactoring. For example, introducing generic helper functions for certain sanity checking like was done with
- relates to
-
JDK-8333326 Linux Alpine build fails after 8302744
-
- Resolved
-
-
JDK-8333967 containers/cgroup/PlainRead.java fails after 8302744
-
- Closed
-
-
JDK-8331560 Refactor Hotspot container detection code so that subsystem delegates to controllers
-
- Resolved
-
-
JDK-8333200 Test containers/docker/TestPids.java fails Limit value -1 is not accepted as unlimited
-
- Closed
-
-
JDK-8322420 [Linux] cgroup v2: Limits in parent nested control groups are not detected
-
- Resolved
-
(2 links to)