-
Versions SonarQube 10.2.0 , Sonarlint 7.6.0 , Sonarqube Extension for Azure DevOps v5.17.2)
*SonarQube is deployed with zip, -
Description :
We are are using SonarQube Enterprise Edition, version : 10.2.0.77647 and
we are facing issues with instability due to Memory saturation of the JVM. In our situation we have 4,778 M LOC with 36 projects onboarded and we are allocating the following values:
# JVM options of Elasticsearch process
sonar.search.javaOpts=-Xmx4G -Xms4G -XX:MaxDirectMemorySize=1G -XX:+HeapDumpOnOutOfMemoryError
# WEB SERVER
sonar.web.javaOpts=-Xmx6G -Xms6G -XX:+HeapDumpOnOutOfMemoryError
# COMPUTE ENGINE
sonar.ce.javaOpts=-Xmx6G -Xms6G -XX:+HeapDumpOnOutOfMemoryError
- The largest project has 1.2 M LOC
- Store Size is 201.2 MB
How can we calculate the proper value to each one ?
*LOG extraction
2024.01.24 17:37:08 WARN web[][o.a.c.l.WebappClassLoaderBase] The web application [ROOT] appears to have started a thread named [Thread-9] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
java.base@17.0.8/sun.nio.ch.SocketDispatcher.read0(Native Method)
java.base@17.0.8/sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:46)
java.base@17.0.8/sun.nio.ch.NioSocketImpl.tryRead(NioSocketImpl.java:261)
java.base@17.0.8/sun.nio.ch.NioSocketImpl.implRead(NioSocketImpl.java:312)
java.base@17.0.8/sun.nio.ch.NioSocketImpl.read(NioSocketImpl.java:350)
java.base@17.0.8/sun.nio.ch.NioSocketImpl$1.read(NioSocketImpl.java:803)
java.base@17.0.8/java.net.Socket$SocketInputStream.read(Socket.java:966)
java.base@17.0.8/java.io.BufferedInputStream.fill(BufferedInputStream.java:244)
java.base@17.0.8/java.io.BufferedInputStream.read1(BufferedInputStream.java:284)
java.base@17.0.8/java.io.BufferedInputStream.read(BufferedInputStream.java:343)
java.naming@17.0.8/com.sun.jndi.ldap.Connection.run(Connection.java:856)
java.base@17.0.8/java.lang.Thread.run(Thread.java:833)
I look forward to hearing from you!
Thank you in advance.