]> source.dussan.org Git - sonarqube.git/commitdiff
SONARCLOUD-75 Mark 3 migrations as blue/green compatible
authorSimon Brandhof <simon.brandhof@sonarsource.com>
Tue, 12 Jun 2018 21:21:56 +0000 (23:21 +0200)
committerSonarTech <sonartech@sonarsource.com>
Thu, 14 Jun 2018 18:20:53 +0000 (20:20 +0200)
server/sonar-db-migration/src/main/java/org/sonar/server/platform/db/migration/version/v72/AddUniqueIndexOnRulesParameters.java
server/sonar-db-migration/src/main/java/org/sonar/server/platform/db/migration/version/v72/PurgeDuplicateRulesParameters.java
server/sonar-db-migration/src/main/java/org/sonar/server/platform/db/migration/version/v72/PurgeOrphansForCE.java

index cfb48acf321c0b5001858d8a153bf994e96387bc..168ce89dc7612e3cb52db6e50f2d36ae08f57db6 100644 (file)
@@ -21,11 +21,18 @@ package org.sonar.server.platform.db.migration.version.v72;
 
 import java.sql.SQLException;
 import org.sonar.db.Database;
+import org.sonar.server.platform.db.migration.SupportsBlueGreen;
 import org.sonar.server.platform.db.migration.def.IntegerColumnDef;
 import org.sonar.server.platform.db.migration.def.VarcharColumnDef;
 import org.sonar.server.platform.db.migration.sql.CreateIndexBuilder;
 import org.sonar.server.platform.db.migration.step.DdlChange;
 
+/**
+ * The missing unique index can be added when server is up, so
+ * blue/green deployment is supported.
+ * See {@link PurgeDuplicateRulesParameters} for more details.
+ */
+@SupportsBlueGreen
 public class AddUniqueIndexOnRulesParameters extends DdlChange {
 
   public AddUniqueIndexOnRulesParameters(Database db) {
index 12f4867df13bbb1d20829ca1cd9f41a5c65c13a1..139158f9fd73c5cfb1f98ceabc2c0e28093efd2e 100644 (file)
@@ -21,8 +21,17 @@ package org.sonar.server.platform.db.migration.version.v72;
 
 import java.sql.SQLException;
 import org.sonar.db.Database;
+import org.sonar.server.platform.db.migration.SupportsBlueGreen;
 import org.sonar.server.platform.db.migration.step.DataChange;
 
+/**
+ * The migration drops duplicated rows from some rules-related tables.
+ * The root cause of these duplications is not known. It could even
+ * be already fixed. Assuming that the duplications are not created frequently,
+ * nor recently, then executing the migration when server is up
+ * is safe. Blue/green deployment is supported.
+ */
+@SupportsBlueGreen
 public class PurgeDuplicateRulesParameters extends DataChange {
 
   private static final String REMOVE_DUPLICATE_RULES_PARAMS_SQL_FOR_GENERIC =
index 49a0e1bfdc7ed4797051b727b3f040f1523ffa84..fda34a3ca40517a538b351991dd25ebb6df6b673 100644 (file)
@@ -21,8 +21,14 @@ package org.sonar.server.platform.db.migration.version.v72;
 
 import java.sql.SQLException;
 import org.sonar.db.Database;
+import org.sonar.server.platform.db.migration.SupportsBlueGreen;
 import org.sonar.server.platform.db.migration.step.DataChange;
 
+/**
+ * The migration drops the orphans from tables ce_*. It can be executed
+ * when server is up, so it supports blue/green deployments.
+ */
+@SupportsBlueGreen
 public class PurgeOrphansForCE extends DataChange {
 
   public PurgeOrphansForCE(Database db) {