From: Jacek Date: Mon, 13 Dec 2021 16:24:23 +0000 (+0100) Subject: SONAR-15827 Fix SSF-219 X-Git-Tag: 8.9.4.50575 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=8bc52d65b94a2f118d55b94719e9c8016f0d6c3d;p=sonarqube.git SONAR-15827 Fix SSF-219 --- diff --git a/build.gradle b/build.gradle index a48bcd5cf19..69ed323b0e4 100644 --- a/build.gradle +++ b/build.gradle @@ -305,10 +305,10 @@ subprojects { exclude 'commons-logging:commons-logging' } // Be aware that Log4j is used by Elasticsearch client - dependencySet(group: 'org.apache.logging.log4j', version: '2.8.2') { + dependencySet(group: 'org.apache.logging.log4j', version: '2.15.0') { + entry 'log4j-core' entry 'log4j-api' entry 'log4j-to-slf4j' - entry 'log4j-core' } dependencySet(group: 'org.apache.tomcat.embed', version: '8.5.68') { entry 'tomcat-embed-core' @@ -339,7 +339,7 @@ subprojects { entry 'jetty-servlet' } dependency('org.elasticsearch.client:elasticsearch-rest-high-level-client:7.13.4') { - exclude 'commons-logging:commons-logging' + exclude 'org.apache.logging.log4j:log4j-core' } dependency 'org.elasticsearch.plugin:transport-netty4-client:7.13.4' dependency 'org.elasticsearch:mocksocket:1.0' diff --git a/server/sonar-main/build.gradle b/server/sonar-main/build.gradle index 2e11dd66e75..651109f9c56 100644 --- a/server/sonar-main/build.gradle +++ b/server/sonar-main/build.gradle @@ -19,7 +19,6 @@ dependencies { compile 'org.apache.logging.log4j:log4j-api' compile 'org.elasticsearch.client:elasticsearch-rest-high-level-client' compile 'org.elasticsearch:elasticsearch' - compile 'org.elasticsearch:elasticsearch-core' compile 'org.slf4j:slf4j-api' compile 'org.yaml:snakeyaml' diff --git a/server/sonar-main/src/main/java/org/sonar/application/command/EsJvmOptions.java b/server/sonar-main/src/main/java/org/sonar/application/command/EsJvmOptions.java index 94ff737543d..0063e9c32e6 100644 --- a/server/sonar-main/src/main/java/org/sonar/application/command/EsJvmOptions.java +++ b/server/sonar-main/src/main/java/org/sonar/application/command/EsJvmOptions.java @@ -73,17 +73,6 @@ public class EsJvmOptions extends JvmOptions { // specify an alternative path for JVM fatal error logs (ES 6.6.1 default is "logs/hs_err_pid%p.log") res.put("-XX:ErrorFile=", "../logs/es_hs_err_pid%p.log"); - // JDK 8 GC logging (by default ES 6.6.1 enables them, we don't want to do that in SQ, no one will analyze them anyway) - // res.put("8:-XX:+PrintGCDetails", ""); - // res.put("8:-XX:+PrintGCDateStamps", ""); - // res.put("8:-XX:+PrintTenuringDistribution", ""); - // res.put("8:-XX:+PrintGCApplicationStoppedTime", ""); - // res.put("8:-Xloggc:logs/gc.log", ""); - // res.put("8:-XX:+UseGCLogFileRotation", ""); - // res.put("8:-XX:NumberOfGCLogFiles", "32"); - // res.put("8:-XX:GCLogFileSize", "64m"); - // JDK 9+ GC logging - // res.put("9-:-Xlog:gc*,gc+age=trace,safepoint:file=logs/gc.log:utctime,pid,tags:filecount=32,filesize=64m", ""); } /** @@ -123,6 +112,7 @@ public class EsJvmOptions extends JvmOptions { // log4j 2 res.put("-Dlog4j.shutdownHookEnabled=", "false"); res.put("-Dlog4j2.disable.jmx=", "true"); + res.put("-Dlog4j2.formatMsgNoLookups=", "true"); /* * Due to internationalization enhancements in JDK 9 Elasticsearch need to set the provider to COMPAT otherwise time/date * parsing will break in an incompatible way for some date patterns and locales. diff --git a/server/sonar-main/src/test/java/org/sonar/application/command/EsJvmOptionsTest.java b/server/sonar-main/src/test/java/org/sonar/application/command/EsJvmOptionsTest.java index 62086882fd4..693d173213d 100644 --- a/server/sonar-main/src/test/java/org/sonar/application/command/EsJvmOptionsTest.java +++ b/server/sonar-main/src/test/java/org/sonar/application/command/EsJvmOptionsTest.java @@ -49,7 +49,7 @@ public class EsJvmOptionsTest { EsJvmOptions underTest = new EsJvmOptions(new Props(properties), tmpDir); assertThat(underTest.getAll()) - .containsExactly( + .containsExactlyInAnyOrder( "-XX:+UseConcMarkSweepGC", "-XX:CMSInitiatingOccupancyFraction=75", "-XX:+UseCMSInitiatingOccupancyOnly", @@ -69,6 +69,7 @@ public class EsJvmOptionsTest { "-Dio.netty.allocator.numDirectArenas=0", "-Dlog4j.shutdownHookEnabled=false", "-Dlog4j2.disable.jmx=true", + "-Dlog4j2.formatMsgNoLookups=true", "-Djava.locale.providers=COMPAT", "-Des.enforce.bootstrap.checks=true"); } @@ -152,6 +153,7 @@ public class EsJvmOptionsTest { "-Dio.netty.allocator.numDirectArenas=0\n" + "-Dlog4j.shutdownHookEnabled=false\n" + "-Dlog4j2.disable.jmx=true\n" + + "-Dlog4j2.formatMsgNoLookups=true\n" + "-Djava.locale.providers=COMPAT\n" + "-Des.enforce.bootstrap.checks=true\n" + "-foo\n" +