Tux Machines

Red Hat and Fedora Leftovers

Posted by Roy Schestowitz on Jul 20, 2024

today's leftovers
Ubuntu Leftovers

Fedora Project ☛ Fedora Community Blog: Infra and RelEng Update – Week 29 2024

↺ Fedora Community Blog: Infra and RelEng Update – Week 29 2024
This is a weekly report from the I&R (Infrastructure & Release Engineering) Team. It also contains updates for CPE (Community Platform Engineering) Team as the CPE initiatives are in most cases tied to I&R work.
↺ Infrastructure & Release Engineering
↺ Community Platform Engineering
We provide you both an infographic and text version of the weekly report. If you just want to quickly look at what we did, just look at the infographic. If you are interested in more in-depth details look below the infographic.
↺ Infrastructure & Release Engineering
↺ Community Platform Engineering

Remi Collet ☛ Remi Collet: PHP version 8.2.22RC1 and 8.3.10RC1

↺ Remi Collet: PHP version 8.2.22RC1 and 8.3.10RC1
Release Candidate versions are available in the testing repository for Fedora and Enterprise Linux (RHEL / CentOS / Alma / Rocky and other clones) to allow more people to test them. They are available as Software Collections, for a parallel installation, the perfect solution for such tests, and also as base packages.
RPMs of PHP version 8.3.10RC1 are available

as base packages in the remi-modular-test for Fedora 38-40 and Enterprise Linux ≥ 8The packages are available for x86_64 and aarch64.

PHP version 8.1 is now in security mode only, so no more RC will be released.

Red Hat ☛ Metaspace setting and tuning in JDK 8+ Applications (in and outside containers)

↺ Metaspace setting and tuning in JDK 8+ Applications (in and outside containers)
Since JDK 8, including upper versions, Metaspace has been set apart from the main heap section of memory and set via MetaspaceSize and MaxMetaspace flags. Objectively, this means metadata of loading classes in Java are set in the non-heap region also known as the native region of the memory (again, not inside the heap).
↺ Java
This Metaspace region is a change from previous versions, which had Java Metaspace as part of the heap in the so-called "Permanent Generation" and was set using the Java Virtual Machine (JVM) flag: PermSize and MaxPermSize.
Although this discussion is very well settled, this article aims to review Metaspace, its tuning, and the consequences for container and non-container usage. It also adds troubleshooting steps in case those are needed.
As briefly mentioned above, Metaspace was introduced on JDK 8+, therefore, in the case of OutOfMemory Exception, changed from the  Java.Lang.OutOfMemoryError: PermGen to OutOfMemoryError: Metaspace. Consequently, this is the first indication that the Java version is being used above JDK 7.
Metaspace does not occupy the heap region but rather the native space of the JVM, so it is not bounded by the Xmx setting.
Metaspace will allocate regions of memory in the so-called metaspace chunks, or metachunks inside the Virtual Spaces, which are areas of contiguous address space provided by the OS. This allocation is done on demand. More information in this solution: How does the JVM divide the Metaspace in the memory?
↺ How does the JVM divide the Metaspace in the memory?
Also in that solution, it is explained that in JDK 11, the VM.metaspace option was introduced in Java diagnostics, which provides complete detailed information about Metaspace, including the chunks, the size, the InitialBootClassLoaderMetaspaceSize, UseCompressedClassPointers, and CompressedClassSpaceSize. Also, detailed information on the chunks: [...]
↺ Java
↺ How does the JVM divide the Metaspace in the memory?
gemini.tuxmachines.org