]> source.dussan.org Git - sonarqube.git/commitdiff
Upgrade DBCP
authorEric Hartmann <hartmann.eric@gmail.com>
Wed, 29 Aug 2018 13:56:42 +0000 (15:56 +0200)
committerSonarTech <sonartech@sonarsource.com>
Fri, 7 Sep 2018 18:20:55 +0000 (20:20 +0200)
17 files changed:
build.gradle
server/sonar-ce/src/main/java/org/sonar/ce/monitoring/CeDatabaseMBeanImpl.java
server/sonar-db-core/build.gradle
server/sonar-db-core/src/main/java/org/sonar/db/DatabaseUtils.java
server/sonar-db-core/src/main/java/org/sonar/db/DefaultDatabase.java
server/sonar-db-core/src/main/java/org/sonar/db/profiling/ConnectionInterceptor.java
server/sonar-db-core/src/main/java/org/sonar/db/profiling/NullConnectionInterceptor.java
server/sonar-db-core/src/main/java/org/sonar/db/profiling/ProfiledConnectionInterceptor.java
server/sonar-db-core/src/main/java/org/sonar/db/profiling/ProfiledDataSource.java
server/sonar-db-core/src/test/java/org/sonar/db/DefaultDatabaseTest.java
server/sonar-db-core/src/test/java/org/sonar/db/H2Database.java
server/sonar-db-core/src/test/java/org/sonar/db/profiling/ProfiledDataSourceTest.java
server/sonar-db-dao/src/test/java/org/sonar/db/DbTester.java
server/sonar-db-migration/src/test/java/org/sonar/server/platform/db/migration/step/DataChangeTest.java
server/sonar-db-migration/src/test/java/org/sonar/server/platform/db/migration/version/v67/DropOldLicensesTest.java
server/sonar-server/build.gradle
server/sonar-server/src/main/java/org/sonar/server/platform/monitoring/DbConnectionSection.java

index 7ddc1f035b99658454cef591364c1171addb4341..18051ec7d05ccaa9ac31eb5540084ae443bdc7a9 100644 (file)
@@ -102,7 +102,6 @@ subprojects {
         exclude 'commons-logging:commons-logging'
       }
       dependency 'commons-codec:commons-codec:1.8'
-      dependency 'commons-dbcp:commons-dbcp:1.4'
       dependency 'commons-dbutils:commons-dbutils:1.5'
       dependency 'commons-io:commons-io:2.6'
       dependency 'commons-lang:commons-lang:2.6'
@@ -141,6 +140,7 @@ subprojects {
       dependency 'net.jpountz.lz4:lz4:1.3.0'
       dependency 'org.apache.commons:commons-csv:1.4'
       dependency 'org.apache.commons:commons-email:1.5'
+      dependency 'org.apache.commons:commons-dbcp2:2.5.0'
       dependency('org.apache.httpcomponents:httpclient:4.5.2'){
         exclude 'commons-logging:commons-logging'
       }
@@ -208,7 +208,7 @@ subprojects {
         entry 'log4j-over-slf4j'
         entry 'slf4j-api'
       }
-      dependency 'org.postgresql:postgresql:42.2.2'
+      dependency 'org.postgresql:postgresql:42.2.5'
       dependency 'org.reflections:reflections:0.9.9'
       dependency 'org.simpleframework:simple:4.1.21'
       dependency 'org.sonarsource.orchestrator:sonar-orchestrator:3.21.0.1721'
index 85f7cce76de6fdbeb5b1df29dbe89a7baf224f41..2a994866783f959e773686dcf87896b1284609b9 100644 (file)
@@ -19,7 +19,7 @@
  */
 package org.sonar.ce.monitoring;
 
-import org.apache.commons.dbcp.BasicDataSource;
+import org.apache.commons.dbcp2.BasicDataSource;
 import org.picocontainer.Startable;
 import org.sonar.db.DbClient;
 import org.sonar.process.Jmx;
@@ -53,7 +53,7 @@ public class CeDatabaseMBeanImpl implements CeDatabaseMBean, Startable, SystemIn
 
   @Override
   public int getPoolMaxActiveConnections() {
-    return commonsDbcp().getMaxActive();
+    return commonsDbcp().getMaxTotal();
   }
 
   @Override
@@ -78,12 +78,12 @@ public class CeDatabaseMBeanImpl implements CeDatabaseMBean, Startable, SystemIn
 
   @Override
   public long getPoolMaxWaitMillis() {
-    return commonsDbcp().getMaxWait();
+    return commonsDbcp().getMaxWaitMillis();
   }
 
   @Override
   public boolean getPoolRemoveAbandoned() {
-    return commonsDbcp().getRemoveAbandoned();
+    return commonsDbcp().getRemoveAbandonedOnBorrow();
   }
 
   @Override
index 10a0e9f4718da4c83f26a1082813337d32fdca43..9fcef14168cabd0dee6b1b18c2bc7851ef57cef0 100644 (file)
@@ -10,7 +10,7 @@ dependencies {
   compile 'ch.qos.logback:logback-classic'
   compile 'ch.qos.logback:logback-core'
   compile 'commons-codec:commons-codec'
-  compile 'commons-dbcp:commons-dbcp'
+  compile 'org.apache.commons:commons-dbcp2'
   compile 'commons-dbutils:commons-dbutils'
   compile 'net.jpountz.lz4:lz4'
   compile 'org.apache.commons:commons-csv'
index 0e9c5d1169e0c6e551570c79383c783704a443e8..eaca483020badf4777273e55140cd858d5147687 100644 (file)
@@ -318,8 +318,20 @@ public class DatabaseUtils {
 
   private static boolean doTableExists(String table, Connection connection) {
     // table type is used to speed-up Oracle by removing introspection of system tables and aliases.
-    try (ResultSet rs = connection.getMetaData().getTables(null, null, table, TABLE_TYPE)) {
+    try (ResultSet rs = connection.getMetaData().getTables(connection.getCatalog(), connection.getSchema(), table, TABLE_TYPE)) {
+      System.out.println("****>> " + rs.getMetaData().getSchemaName(1));
+      System.out.println("****>>> " + connection.getSchema());
       while (rs.next()) {
+        System.out.println("TABLE_CAT = " + rs.getString("TABLE_CAT"));
+        System.out.println("TABLE_SCHEM = " + rs.getString("TABLE_SCHEM"));
+        System.out.println("TABLE_NAME = " + rs.getString("TABLE_NAME"));
+        System.out.println("TABLE_TYPE = " + rs.getString("TABLE_TYPE"));
+        System.out.println("REMARKS = " + rs.getString("REMARKS"));
+        //System.out.println("TYPE_CAT = " + rs.getString("TYPE_CAT"));
+        //System.out.println("TYPE_SCHEM = " + rs.getString("TYPE_SCHEM"));
+        //System.out.println("TYPE_NAME = " + rs.getString("TYPE_NAME"));
+        System.out.println("SELF_REFERENCING_COL_NAME = " + rs.getString("SELF_REFERENCING_COL_NAME"));
+        System.out.println("REF_GENERATION = " + rs.getString("REF_GENERATION"));
         String name = rs.getString("TABLE_NAME");
         if (table.equalsIgnoreCase(name)) {
           return true;
index 06259361d70e08b200f8952865498db701a3b67f..90ad11a5789b8bfa3563af824f9570e679490299 100644 (file)
@@ -27,8 +27,8 @@ import java.util.List;
 import java.util.Map;
 import java.util.Properties;
 import javax.sql.DataSource;
-import org.apache.commons.dbcp.BasicDataSource;
-import org.apache.commons.dbcp.BasicDataSourceFactory;
+import org.apache.commons.dbcp2.BasicDataSource;
+import org.apache.commons.dbcp2.BasicDataSourceFactory;
 import org.apache.commons.dbutils.DbUtils;
 import org.apache.commons.lang.StringUtils;
 import org.sonar.api.config.Settings;
index c9bc8184f267efb042fb36f9886290302e1d1e3c..98b17e1f8fd79b353ffd1ca422c1e6de83fa84e0 100644 (file)
@@ -21,7 +21,7 @@ package org.sonar.db.profiling;
 
 import java.sql.Connection;
 import java.sql.SQLException;
-import org.apache.commons.dbcp.BasicDataSource;
+import org.apache.commons.dbcp2.BasicDataSource;
 
 public interface ConnectionInterceptor {
 
index 3e50ed9ac49c06bc842a3fc1162215c41b216447..68e2a8c3728fa33335bb22ae6fb8cbd08b39cdac 100644 (file)
@@ -21,7 +21,7 @@ package org.sonar.db.profiling;
 
 import java.sql.Connection;
 import java.sql.SQLException;
-import org.apache.commons.dbcp.BasicDataSource;
+import org.apache.commons.dbcp2.BasicDataSource;
 
 public enum NullConnectionInterceptor implements ConnectionInterceptor {
   INSTANCE;
index 0dff4eac332281172870fd04f90b5427a96af784..17021b079dbee0ea136bad67e786d76169bfbb85 100644 (file)
@@ -22,7 +22,7 @@ package org.sonar.db.profiling;
 import java.lang.reflect.Proxy;
 import java.sql.Connection;
 import java.sql.SQLException;
-import org.apache.commons.dbcp.BasicDataSource;
+import org.apache.commons.dbcp2.BasicDataSource;
 
 public enum ProfiledConnectionInterceptor implements ConnectionInterceptor {
   INSTANCE;
index 2c0fa00317f97d75c2d5e2e851aca3e1af6048c9..d6391d472fc5447ca8cf04906780ddde34acdded 100644 (file)
@@ -21,9 +21,14 @@ package org.sonar.db.profiling;
 
 import java.io.PrintWriter;
 import java.sql.Connection;
+import java.sql.Driver;
 import java.sql.SQLException;
 import java.util.Collection;
-import org.apache.commons.dbcp.BasicDataSource;
+import java.util.List;
+import java.util.Set;
+import javax.management.MBeanServer;
+import javax.management.ObjectName;
+import org.apache.commons.dbcp2.BasicDataSource;
 import org.sonar.api.utils.log.Logger;
 import org.sonar.api.utils.log.Loggers;
 
@@ -48,25 +53,15 @@ public class ProfiledDataSource extends BasicDataSource {
   }
 
   @Override
-  public boolean getDefaultAutoCommit() {
+  public Boolean getDefaultAutoCommit() {
     return delegate.getDefaultAutoCommit();
   }
 
   @Override
-  public void setDefaultAutoCommit(boolean defaultAutoCommit) {
-    delegate.setDefaultAutoCommit(defaultAutoCommit);
-  }
-
-  @Override
-  public boolean getDefaultReadOnly() {
+  public Boolean getDefaultReadOnly() {
     return delegate.getDefaultReadOnly();
   }
 
-  @Override
-  public void setDefaultReadOnly(boolean defaultReadOnly) {
-    delegate.setDefaultReadOnly(defaultReadOnly);
-  }
-
   @Override
   public int getDefaultTransactionIsolation() {
     return delegate.getDefaultTransactionIsolation();
@@ -108,13 +103,13 @@ public class ProfiledDataSource extends BasicDataSource {
   }
 
   @Override
-  public synchronized int getMaxActive() {
-    return delegate.getMaxActive();
+  public synchronized int getMaxTotal() {
+    return delegate.getMaxTotal();
   }
 
   @Override
-  public synchronized void setMaxActive(int maxActive) {
-    delegate.setMaxActive(maxActive);
+  public synchronized void setMaxTotal(int maxActive) {
+    delegate.setMaxTotal(maxActive);
   }
 
   @Override
@@ -148,13 +143,13 @@ public class ProfiledDataSource extends BasicDataSource {
   }
 
   @Override
-  public synchronized long getMaxWait() {
-    return delegate.getMaxWait();
+  public synchronized long getMaxWaitMillis() {
+    return delegate.getMaxWaitMillis();
   }
 
   @Override
-  public synchronized void setMaxWait(long maxWait) {
-    delegate.setMaxWait(maxWait);
+  public synchronized void setMaxWaitMillis(long maxWait) {
+    delegate.setMaxWaitMillis(maxWait);
   }
 
   @Override
@@ -298,12 +293,12 @@ public class ProfiledDataSource extends BasicDataSource {
   }
 
   @Override
-  public Collection getConnectionInitSqls() {
+  public List<String> getConnectionInitSqls() {
     return delegate.getConnectionInitSqls();
   }
 
   @Override
-  public void setConnectionInitSqls(Collection connectionInitSqls) {
+  public void setConnectionInitSqls(Collection<String> connectionInitSqls) {
     delegate.setConnectionInitSqls(connectionInitSqls);
   }
 
@@ -353,13 +348,24 @@ public class ProfiledDataSource extends BasicDataSource {
   }
 
   @Override
-  public boolean getRemoveAbandoned() {
-    return delegate.getRemoveAbandoned();
+  public boolean getRemoveAbandonedOnBorrow() {
+    return delegate.getRemoveAbandonedOnBorrow();
   }
 
   @Override
-  public void setRemoveAbandoned(boolean removeAbandoned) {
-    delegate.setRemoveAbandoned(removeAbandoned);
+  public void setRemoveAbandonedOnBorrow(boolean removeAbandoned) {
+    delegate.setRemoveAbandonedOnBorrow(removeAbandoned);
+  }
+
+
+  @Override
+  public boolean getRemoveAbandonedOnMaintenance() {
+    return delegate.getRemoveAbandonedOnMaintenance();
+  }
+
+  @Override
+  public void setRemoveAbandonedOnMaintenance(boolean removeAbandoned) {
+    delegate.setRemoveAbandonedOnMaintenance(removeAbandoned);
   }
 
   @Override
@@ -416,4 +422,219 @@ public class ProfiledDataSource extends BasicDataSource {
   public <T> T unwrap(Class<T> iface) throws SQLException {
     return delegate.unwrap(iface);
   }
+
+  @Override
+  public void setDefaultAutoCommit(Boolean defaultAutoCommit) {
+    delegate.setDefaultAutoCommit(defaultAutoCommit);
+  }
+
+  @Override
+  public void setDefaultReadOnly(Boolean defaultReadOnly) {
+    delegate.setDefaultReadOnly(defaultReadOnly);
+  }
+
+  @Override
+  public Integer getDefaultQueryTimeout() {
+    return delegate.getDefaultQueryTimeout();
+  }
+
+  @Override
+  public void setDefaultQueryTimeout(Integer defaultQueryTimeoutSeconds) {
+    delegate.setDefaultQueryTimeout(defaultQueryTimeoutSeconds);
+  }
+
+  @Override
+  public String getDefaultSchema() {
+    return delegate.getDefaultSchema();
+  }
+
+  @Override
+  public void setDefaultSchema(String defaultSchema) {
+    delegate.setDefaultSchema(defaultSchema);
+  }
+
+  @Override
+  public boolean getCacheState() {
+    return delegate.getCacheState();
+  }
+
+  @Override
+  public void setCacheState(boolean cacheState) {
+    delegate.setCacheState(cacheState);
+  }
+
+  @Override
+  public synchronized Driver getDriver() {
+    return delegate.getDriver();
+  }
+
+  @Override
+  public synchronized void setDriver(Driver driver) {
+    delegate.setDriver(driver);
+  }
+
+  @Override
+  public synchronized boolean getLifo() {
+    return delegate.getLifo();
+  }
+
+  @Override
+  public synchronized void setLifo(boolean lifo) {
+    delegate.setLifo(lifo);
+  }
+
+  @Override
+  public synchronized boolean getTestOnCreate() {
+    return delegate.getTestOnCreate();
+  }
+
+  @Override
+  public synchronized void setTestOnCreate(boolean testOnCreate) {
+    delegate.setTestOnCreate(testOnCreate);
+  }
+
+  @Override
+  public synchronized void setSoftMinEvictableIdleTimeMillis(long softMinEvictableIdleTimeMillis) {
+    delegate.setSoftMinEvictableIdleTimeMillis(softMinEvictableIdleTimeMillis);
+  }
+
+  @Override
+  public synchronized long getSoftMinEvictableIdleTimeMillis() {
+    return delegate.getSoftMinEvictableIdleTimeMillis();
+  }
+
+  @Override
+  public synchronized String getEvictionPolicyClassName() {
+    return delegate.getEvictionPolicyClassName();
+  }
+
+  @Override
+  public synchronized void setEvictionPolicyClassName(String evictionPolicyClassName) {
+    delegate.setEvictionPolicyClassName(evictionPolicyClassName);
+  }
+
+  @Override
+  public String[] getConnectionInitSqlsAsArray() {
+    return delegate.getConnectionInitSqlsAsArray();
+  }
+
+  @Override
+  public long getMaxConnLifetimeMillis() {
+    return delegate.getMaxConnLifetimeMillis();
+  }
+
+  @Override
+  public boolean getLogExpiredConnections() {
+    return delegate.getLogExpiredConnections();
+  }
+
+  @Override
+  public void setMaxConnLifetimeMillis(long maxConnLifetimeMillis) {
+    delegate.setMaxConnLifetimeMillis(maxConnLifetimeMillis);
+  }
+
+  @Override
+  public void setLogExpiredConnections(boolean logExpiredConnections) {
+    delegate.setLogExpiredConnections(logExpiredConnections);
+  }
+
+  @Override
+  public String getJmxName() {
+    return delegate.getJmxName();
+  }
+
+  @Override
+  public void setJmxName(String jmxName) {
+    delegate.setJmxName(jmxName);
+  }
+
+  @Override
+  public boolean getEnableAutoCommitOnReturn() {
+    return delegate.getEnableAutoCommitOnReturn();
+  }
+
+  @Override
+  public void setEnableAutoCommitOnReturn(boolean enableAutoCommitOnReturn) {
+    delegate.setEnableAutoCommitOnReturn(enableAutoCommitOnReturn);
+  }
+
+  @Override
+  public boolean getRollbackOnReturn() {
+    return delegate.getRollbackOnReturn();
+  }
+
+  @Override
+  public void setRollbackOnReturn(boolean rollbackOnReturn) {
+    delegate.setRollbackOnReturn(rollbackOnReturn);
+  }
+
+  @Override
+  public Set<String> getDisconnectionSqlCodes() {
+    return delegate.getDisconnectionSqlCodes();
+  }
+
+  @Override
+  public String[] getDisconnectionSqlCodesAsArray() {
+    return delegate.getDisconnectionSqlCodesAsArray();
+  }
+
+  @Override
+  public void setDisconnectionSqlCodes(Collection<String> disconnectionSqlCodes) {
+    delegate.setDisconnectionSqlCodes(disconnectionSqlCodes);
+  }
+
+  @Override
+  public boolean getFastFailValidation() {
+    return delegate.getFastFailValidation();
+  }
+
+  @Override
+  public void setFastFailValidation(boolean fastFailValidation) {
+    delegate.setFastFailValidation(fastFailValidation);
+  }
+
+  @Override
+  public PrintWriter getAbandonedLogWriter() {
+    return delegate.getAbandonedLogWriter();
+  }
+
+  @Override
+  public void setAbandonedLogWriter(PrintWriter logWriter) {
+    delegate.setAbandonedLogWriter(logWriter);
+  }
+
+  @Override
+  public boolean getAbandonedUsageTracking() {
+    return delegate.getAbandonedUsageTracking();
+  }
+
+  @Override
+  public void setAbandonedUsageTracking(boolean usageTracking) {
+    delegate.setAbandonedUsageTracking(usageTracking);
+  }
+
+  @Override
+  public void invalidateConnection(Connection connection) {
+    delegate.invalidateConnection(connection);
+  }
+
+  @Override
+  public ObjectName preRegister(MBeanServer server, ObjectName objectName) {
+    return delegate.preRegister(server, objectName);
+  }
+
+  @Override
+  public void postRegister(Boolean registrationDone) {
+    delegate.postRegister(registrationDone);
+  }
+
+  @Override
+  public void preDeregister() throws Exception {
+    delegate.preDeregister();
+  }
+
+  @Override
+  public void postDeregister() {
+    delegate.postDeregister();
+  }
 }
index d3c9ca7519b23f69fd34ae365991ce6e01f32ce5..f831bc110da2fc9a8c9275e6c8a096fe3b89002a 100644 (file)
@@ -20,7 +20,7 @@
 package org.sonar.db;
 
 import java.util.Properties;
-import org.apache.commons.dbcp.BasicDataSource;
+import org.apache.commons.dbcp2.BasicDataSource;
 import org.junit.Test;
 import org.sonar.api.config.Settings;
 import org.sonar.api.config.internal.MapSettings;
@@ -89,7 +89,7 @@ public class DefaultDatabaseTest {
     db.stop();
 
     assertThat(db.getDialect().getId()).isEqualTo("h2");
-    assertThat(((BasicDataSource) db.getDataSource()).getMaxActive()).isEqualTo(1);
+    assertThat(((BasicDataSource) db.getDataSource()).getMaxTotal()).isEqualTo(8);
   }
 
   @Test
index 2c9866f67e39f97b5cc2dee036aed5068658d48e..a9192713eab957df3a54b469d333a01d320a5731 100644 (file)
@@ -22,7 +22,7 @@ package org.sonar.db;
 import java.sql.Connection;
 import java.sql.SQLException;
 import javax.sql.DataSource;
-import org.apache.commons.dbcp.BasicDataSource;
+import org.apache.commons.dbcp2.BasicDataSource;
 import org.apache.commons.dbutils.DbUtils;
 import org.sonar.db.dialect.Dialect;
 import org.sonar.db.dialect.H2;
index ede91489b4aee14473b1aa70e697ee1c640eb016..93553f41cb4593e9bd321c3dc1bdba775d5b5a21 100644 (file)
@@ -27,7 +27,7 @@ import java.sql.Date;
 import java.sql.PreparedStatement;
 import java.sql.Statement;
 import java.sql.Timestamp;
-import org.apache.commons.dbcp.BasicDataSource;
+import org.apache.commons.dbcp2.BasicDataSource;
 import org.junit.Rule;
 import org.junit.Test;
 import org.sonar.api.utils.log.LogTester;
index 2081a83f13669a0216368a8c26730ae9bcadeb44..15f11f5d2d02f73e3908936d5201c525efd157b6 100644 (file)
@@ -24,7 +24,7 @@ import java.sql.SQLException;
 import java.util.List;
 import java.util.Map;
 import javax.annotation.Nullable;
-import org.apache.commons.dbcp.BasicDataSource;
+import org.apache.commons.dbcp2.BasicDataSource;
 import org.apache.commons.lang.StringUtils;
 import org.picocontainer.containers.TransientPicoContainer;
 import org.sonar.api.utils.System2;
index b754d2333773690aa4bf0c1d64a4075b7a9c7173..08948c726efe8ec73a053772abd6177a2db5f15d 100644 (file)
@@ -306,7 +306,7 @@ public class DataChangeTest {
             .setString(2, "login" + i)
             .setInt(3, 10 + i)
             .setBoolean(4, true)
-            .setDouble(4, i + 0.5)
+            .setDouble(5, i + 0.5)
             .addBatch();
         }
         upsert.execute().commit().close();
index 21601701f0aa4523d64f6b5deae2892009130761..9574e51f7a4cc56fb28ba73a0c16191fe8cbc419 100644 (file)
@@ -66,7 +66,7 @@ public class DropOldLicensesTest {
       .stream()
       .map(map -> (String)map.get("PROP_KEY"))
       .collect(Collectors.toList()))
-        .containsExactly(expectedSettingKeys);
+        .containsExactlyInAnyOrder(expectedSettingKeys);
   }
 
   public void insertProperty(String propertyKey) {
index 1efcb4d30269241aeb87651f30d223af4cfb49ff..19d0f661aa4edfcb624b45e5335d3e3d71f7167a 100644 (file)
@@ -32,13 +32,13 @@ dependencies {
   compile 'com.google.protobuf:protobuf-java'
   compile 'com.googlecode.java-diff-utils:diffutils'
   compile 'com.hazelcast:hazelcast-client'
-  compile 'commons-dbcp:commons-dbcp'
   compile 'commons-dbutils:commons-dbutils'
   compile 'io.jsonwebtoken:jjwt'
   compile 'javax.xml.bind:jaxb-api'
   compile 'org.apache.httpcomponents:httpclient'
   compile 'org.apache.logging.log4j:log4j-api'
   compile 'org.apache.tomcat.embed:tomcat-embed-core'
+  compile 'org.apache.commons:commons-dbcp2'
   compile 'org.elasticsearch.client:transport'
   compile 'org.picocontainer:picocontainer'
   compile 'org.slf4j:jul-to-slf4j'
index 6f2d05eb11ba2a7fd73e30cae84802b5bbafb36c..5a37f672929898cc5662f95047248b760c11c631 100644 (file)
@@ -19,7 +19,7 @@
  */
 package org.sonar.server.platform.monitoring;
 
-import org.apache.commons.dbcp.BasicDataSource;
+import org.apache.commons.dbcp2.BasicDataSource;
 import org.sonar.api.SonarQubeSide;
 import org.sonar.api.SonarRuntime;
 import org.sonar.db.DbClient;
@@ -60,7 +60,7 @@ public class DbConnectionSection extends BaseSectionMBean implements DbConnectio
 
   @Override
   public int getPoolMaxActiveConnections() {
-    return commonsDbcp().getMaxActive();
+    return commonsDbcp().getMaxTotal();
   }
 
   @Override
@@ -85,12 +85,12 @@ public class DbConnectionSection extends BaseSectionMBean implements DbConnectio
 
   @Override
   public long getPoolMaxWaitMillis() {
-    return commonsDbcp().getMaxWait();
+    return commonsDbcp().getMaxWaitMillis();
   }
 
   @Override
   public boolean getPoolRemoveAbandoned() {
-    return commonsDbcp().getRemoveAbandoned();
+    return commonsDbcp().getRemoveAbandonedOnBorrow();
   }
 
   @Override