]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-11962 Warn when detecting MySQL at startup
authorPierre Guillot <pierre.guillot@sonarsource.com>
Wed, 15 May 2019 15:43:20 +0000 (17:43 +0200)
committerSonarTech <sonartech@sonarsource.com>
Fri, 17 May 2019 18:21:08 +0000 (20:21 +0200)
server/sonar-db-core/src/main/java/org/sonar/db/dialect/MySql.java
server/sonar-db-core/src/test/java/org/sonar/db/dialect/MySqlTest.java

index 421246a493ba7341ed6e0942f670e9f265e783c3..bc8dfe815288af84494fbbd274a80669a9b53d26 100644 (file)
@@ -63,6 +63,14 @@ public class MySql extends AbstractDialect {
   public void init(DatabaseMetaData metaData) throws SQLException {
     checkDbVersion(metaData, MIN_SUPPORTED_VERSION);
 
-    Loggers.get(getClass()).warn("MySQL support is deprecated and will be dropped soon.");
+    String message = "\n" +
+      "#############################################################################################################\n" +
+      "#         End of Life of MySQL Support : SonarQube 7.8 is the last version that will support MySQL.         #\n" +
+      "#         Please consider migrating to a supported database. Get the migration detail on                    #\n" +
+      "#         https://community.sonarsource.com/t/end-of-life-of-mysql-support                                  #\n" +
+      "#         and https://github.com/SonarSource/mysql-migrator                                                 #\n" +
+      "#############################################################################################################\n";
+
+    Loggers.get(getClass()).warn(message);
   }
 }
index 44a77dfe0bab407ab45d447e2f3b02f0125a783c..a176c15bdf14b94a56dd765285a61eba00c49ca2 100644 (file)
@@ -21,6 +21,7 @@ package org.sonar.db.dialect;
 
 import java.sql.DatabaseMetaData;
 import java.sql.SQLException;
+import java.util.List;
 import org.junit.Rule;
 import org.junit.Test;
 import org.junit.rules.ExpectedException;
@@ -99,7 +100,8 @@ public class MySqlTest {
   public void init_logs_warning() throws SQLException {
     underTest.init(newMetadata(5, 6));
 
-    assertThat(logs.logs(LoggerLevel.WARN)).contains("MySQL support is deprecated and will be dropped soon.");
+    List<String> logs = this.logs.logs(LoggerLevel.WARN);
+    assertThat(logs.get(0).contains("End of Life of MySQL Support : SonarQube 7.8 is the last version that will support MySQL.")).isTrue();
   }
 
   @Test