]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-11196 Minimal Oracle driver is now 12.2
authorEric Hartmann <hartmann.eric@gmail.com>
Thu, 6 Sep 2018 08:53:40 +0000 (10:53 +0200)
committerSonarTech <sonartech@sonarsource.com>
Fri, 7 Sep 2018 18:20:56 +0000 (20:20 +0200)
In order to use Connection#getSchema

server/sonar-db-core/src/main/java/org/sonar/db/DatabaseChecker.java
server/sonar-db-core/src/test/java/org/sonar/db/DatabaseCheckerTest.java

index d39d632f798ccd1c2826829ea07e8c503cb2163d..4b510e29f4ce946e6e0de3fdf697e3fb2f75a40b 100644 (file)
@@ -97,9 +97,9 @@ public class DatabaseChecker implements Startable {
       String driverVersion = connection.getMetaData().getDriverVersion();
       String[] parts = StringUtils.split(driverVersion, ".");
       int intVersion = Integer.parseInt(parts[0]) * 100 + Integer.parseInt(parts[1]);
-      if (intVersion < 1102) {
+      if (intVersion < 1200) {
         throw MessageException.of(String.format(
-          "Unsupported Oracle driver version: %s. Minimal supported version is 11.2.", driverVersion));
+          "Unsupported Oracle driver version: %s. Minimal supported version is 12.1.", driverVersion));
       }
     }
   }
index ad496abfe6c8dce65096b6a920e08ba0f40d17a6..abe98089ee57cceb01ede62dfc62f7e6a913013b 100644 (file)
@@ -47,12 +47,19 @@ public class DatabaseCheckerTest {
   public LogTester logTester = new LogTester();
 
   @Test
-  public void requires_oracle_driver_11_2() throws Exception {
-    Database db = mockDb(new Oracle(), 11, 2, "11.2.0.0.1");
+  public void requires_oracle_driver_12_2() throws Exception {
+    Database db = mockDb(new Oracle(), 11, 2, "18.3.0.0.0");
+    new DatabaseChecker(db).start();
+
+    db = mockDb(new Oracle(), 11, 2, "12.2.0.1.0");
     new DatabaseChecker(db).start();
     // no error
 
-    db = mockDb(new Oracle(), 11, 2, "11.3.1");
+    db = mockDb(new Oracle(), 11, 2, "12.1.0.2.0");
+    new DatabaseChecker(db).start();
+    // no error
+
+    db = mockDb(new Oracle(), 11, 2, "12.1.0.1.0");
     new DatabaseChecker(db).start();
     // no error
 
@@ -65,30 +72,34 @@ public class DatabaseCheckerTest {
       new DatabaseChecker(db).start();
       fail();
     } catch (MessageException e) {
-      assertThat(e).hasMessage("Unsupported Oracle driver version: 11.1.0.2. Minimal supported version is 11.2.");
+      assertThat(e).hasMessage("Unsupported Oracle driver version: 11.1.0.2. Minimal supported version is 12.1.");
     }
   }
 
   @Test
   public void requires_oracle_11g_or_greater() throws Exception {
     // oracle 11.0 is ok
-    Database db = mockDb(new Oracle(), 11, 0, "11.2.0.0.1");
+    Database db = mockDb(new Oracle(), 11, 0, "12.1.0.1.0");
     new DatabaseChecker(db).start();
 
-    // oracle 11.1 is ok
-    db = mockDb(new Oracle(), 11, 1, "11.2.0.0.1");
+    // oracle 11.1 is noit
+    db = mockDb(new Oracle(), 11, 1, "12.1.0.1.0");
     new DatabaseChecker(db).start();
 
     // oracle 11.2 is ok
-    db = mockDb(new Oracle(), 11, 2, "11.2.0.0.1");
+    db = mockDb(new Oracle(), 11, 2, "12.1.0.1.0");
     new DatabaseChecker(db).start();
 
     // oracle 12 is ok
-    db = mockDb(new Oracle(), 12, 0, "11.2.0.0.1");
+    db = mockDb(new Oracle(), 12, 0, "12.1.0.1.0");
+    new DatabaseChecker(db).start();
+
+    // oracle 18 is ok
+    db = mockDb(new Oracle(), 18, 0, "18.3.0.0.0");
     new DatabaseChecker(db).start();
 
     // oracle 10 is not supported
-    db = mockDb(new Oracle(), 10, 2, "11.2.0.0.1");
+    db = mockDb(new Oracle(), 10, 2, "12.1.0.1.0");
     try {
       new DatabaseChecker(db).start();
       fail();