aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimon Brandhof <simon.brandhof@sonarsource.com>2014-07-22 10:30:08 +0200
committerSimon Brandhof <simon.brandhof@sonarsource.com>2014-07-22 10:30:27 +0200
commit00226da4bc66a3d7be00f14dca98bb6d26e06189 (patch)
tree0311e943a124568fa85a365d0489267a7a552708
parentba7c312b6f37fb70a747583838beb7e6f65b0d51 (diff)
downloadsonarqube-00226da4bc66a3d7be00f14dca98bb6d26e06189.tar.gz
sonarqube-00226da4bc66a3d7be00f14dca98bb6d26e06189.zip
SONAR-5437 fix bug on postgres (at least) when no data to be upgraded
-rw-r--r--server/sonar-server/src/main/java/org/sonar/server/db/migrations/v45/AddMissingRuleParameterDefaultValuesMigration.java9
-rw-r--r--server/sonar-server/src/test/resources/org/sonar/server/db/migrations/v45/AddMissingRuleParameterDefaultValuesMigrationTest/no_changes.xml11
2 files changed, 17 insertions, 3 deletions
diff --git a/server/sonar-server/src/main/java/org/sonar/server/db/migrations/v45/AddMissingRuleParameterDefaultValuesMigration.java b/server/sonar-server/src/main/java/org/sonar/server/db/migrations/v45/AddMissingRuleParameterDefaultValuesMigration.java
index f8ec7ab6129..dbe21119526 100644
--- a/server/sonar-server/src/main/java/org/sonar/server/db/migrations/v45/AddMissingRuleParameterDefaultValuesMigration.java
+++ b/server/sonar-server/src/main/java/org/sonar/server/db/migrations/v45/AddMissingRuleParameterDefaultValuesMigration.java
@@ -76,7 +76,9 @@ public class AddMissingRuleParameterDefaultValuesMigration extends BaseDataChang
.setString(4, ruleParameter.name)
.addBatch();
}
- upsert.execute().commit().close();
+ if (!activeRules.isEmpty()) {
+ upsert.execute().commit().close();
+ }
// update date for ES indexation
upsert = context.prepareUpsert("update active_rules set updated_at=? where id=?");
@@ -87,8 +89,9 @@ public class AddMissingRuleParameterDefaultValuesMigration extends BaseDataChang
.setLong(2, activeRule.id)
.addBatch();
}
- upsert.execute().commit().close();
-
+ if (!activeRules.isEmpty()) {
+ upsert.execute().commit().close();
+ }
}
}
diff --git a/server/sonar-server/src/test/resources/org/sonar/server/db/migrations/v45/AddMissingRuleParameterDefaultValuesMigrationTest/no_changes.xml b/server/sonar-server/src/test/resources/org/sonar/server/db/migrations/v45/AddMissingRuleParameterDefaultValuesMigrationTest/no_changes.xml
new file mode 100644
index 00000000000..d6fd3bd4100
--- /dev/null
+++ b/server/sonar-server/src/test/resources/org/sonar/server/db/migrations/v45/AddMissingRuleParameterDefaultValuesMigrationTest/no_changes.xml
@@ -0,0 +1,11 @@
+<dataset>
+ <!-- with default value -->
+ <rules_parameters id="1" rule_id="10" name="max" param_type="INT" default_value="10" description="[null]" />
+
+ <!-- this active rule has all parameters -->
+ <active_rules id="100" profile_id="1000" rule_id="10" failure_level="3" inheritance="[null]"
+ created_at="2012-01-01" updated_at="2012-01-01" />
+ <active_rule_parameters id="10000" active_rule_id="100" rules_parameter_id="1" rules_parameter_key="max" value="9"/>
+ <active_rule_parameters id="10001" active_rule_id="100" rules_parameter_id="2" rules_parameter_key="min" value="4"/>
+
+</dataset>