Do not use heap sizes between 32 GB and 47 GB in Jira - Compressed OOPS
Platform notice: Server and Data Center only. This article only applies to Atlassian products on the Server and Data Center platforms.
Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.
*Except Fisheye and Crucible
Summary
Java disables Compressed Oops for application heaps larger than 32 GB, which changes the memory allocation size from 4 to 8 bytes, reducing the number of objects it can store in the heap. This means that increasing the maximum heap to a value near to 32 GB and up to 47 GB will actually decrease the amount of memory available, leading to possible OutOfMemoryErrors.
Solution
If increasing Jira memory heap size near to, or higher than, 32 GB, set it to >=48 GB and continue adding memory from that point. As a best practice it's also recommended using the same value for Xms and Xmx, this will prevent pauses caused by heap expansion, it also decreases the time garbage collection takes to occur, as it will not attempt to resize the heap down at every cycle. More Information at: