Author: reschke
Date: Thu Jul 14 13:15:08 2016
New Revision: 1752659
URL: http://svn.apache.org/viewvc?rev=1752659&view=rev
Log:
OAK-4477: RDBDatasourceFactory - allow interceptor config for Tomcat JDBC pool
and use defaults similar to Sling datasource
Modified:
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBDataSourceFactory.java
Modified:
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBDataSourceFactory.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBDataSourceFactory.java?rev=1752659&r1=1752658&r2=1752659&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBDataSourceFactory.java
(original)
+++
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/rdb/RDBDataSourceFactory.java
Thu Jul 14 13:15:08 2016
@@ -77,6 +77,13 @@ public class RDBDataSourceFactory {
dsclazz.getMethod("setUsername", String.class).invoke(ds,
username);
dsclazz.getMethod("setPassword", String.class).invoke(ds,
passwd);
dsclazz.getMethod("setUrl", String.class).invoke(ds, url);
+ // SHOULD also contain StatementCache, but see OAK-4559
+ String interceptors = System.getProperty(
+
"org.apache.jackrabbit.oak.plugins.document.rdb.RDBDataSourceFactory.jdbcInterceptors",
+ "SlowQueryReport(threshold=10000);ConnectionState");
+ if (!interceptors.isEmpty()) {
+ dsclazz.getMethod("setJdbcInterceptors",
String.class).invoke(ds, interceptors);
+ }
return new CloseableDataSource(ds);
} catch (Exception ex) {
String message = "trying to create datasource " + classname;