diff --git a/pom.xml b/pom.xml
index 2c08f414d4..c6494d335d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -13,18 +13,6 @@
2012
-
- oracleReleases
- Oracle Released Java Packages
- http://download.oracle.com/maven
- default
-
-
- vars.sourceforge.net
- vars.sourceforge.net
- http://vars.sourceforge.net/maven2/
- default
-
bonecp
bonecp
@@ -247,7 +235,7 @@
mysql
mysql-connector-java
- 5.0.4
+ 5.1.20
provided
diff --git a/src/main/java/com/alibaba/druid/sql/visitor/SQLShardingVisitor.java b/src/main/java/com/alibaba/druid/sql/visitor/SQLShardingVisitor.java
new file mode 100644
index 0000000000..308ded30f2
--- /dev/null
+++ b/src/main/java/com/alibaba/druid/sql/visitor/SQLShardingVisitor.java
@@ -0,0 +1,17 @@
+package com.alibaba.druid.sql.visitor;
+
+import com.alibaba.druid.sql.ast.SQLObject;
+import com.alibaba.druid.sql.ast.statement.SQLInsertStatement;
+
+public class SQLShardingVisitor extends SQLASTVisitorAdapter {
+
+ public void postVisit(SQLObject x) {
+ }
+
+ public void preVisit(SQLObject x) {
+ }
+
+ public boolean visit(SQLInsertStatement x) {
+ return false;
+ }
+}
diff --git a/src/test/java/com/alibaba/druid/bvt/pool/TestActiveTrace.java b/src/test/java/com/alibaba/druid/bvt/pool/TestActiveTrace.java
new file mode 100644
index 0000000000..7ac09e20fe
--- /dev/null
+++ b/src/test/java/com/alibaba/druid/bvt/pool/TestActiveTrace.java
@@ -0,0 +1,50 @@
+package com.alibaba.druid.bvt.pool;
+
+import java.lang.management.ManagementFactory;
+import java.sql.Connection;
+
+import junit.framework.Assert;
+import junit.framework.TestCase;
+
+import com.alibaba.druid.pool.DruidDataSource;
+import com.alibaba.druid.stat.DruidDataSourceStatManager;
+
+public class TestActiveTrace extends TestCase {
+
+ private DruidDataSource dataSource;
+
+ protected void setUp() throws Exception {
+ Assert.assertEquals(0, DruidDataSourceStatManager.getInstance().getDataSourceList().size());
+
+ dataSource = new DruidDataSource();
+ dataSource.setRemoveAbandoned(true);
+ dataSource.setRemoveAbandonedTimeoutMillis(10);
+ dataSource.setLogAbandoned(true);
+ dataSource.setTimeBetweenEvictionRunsMillis(10);
+ dataSource.setMinEvictableIdleTimeMillis(300 * 1000);
+ dataSource.setUrl("jdbc:mock:xxx");
+
+ }
+
+ protected void tearDown() throws Exception {
+ dataSource.close();
+ Assert.assertEquals(0, DruidDataSourceStatManager.getInstance().getDataSourceList().size());
+ }
+
+ public void test_activeTrace() throws Exception {
+ for (int i = 0; i < 1000 * 1000; ++i) {
+ dataSource.shrink();
+
+ Connection conn = dataSource.getConnection();
+ conn.close();
+ // Assert.assertEquals(1, dataSource.getPoolingCount());
+ dataSource.shrink();
+ Assert.assertEquals(0, dataSource.getPoolingCount());
+ Assert.assertEquals(0, dataSource.getActiveConnections().size());
+
+ if (i % 5000 == 0) {
+ System.out.println(ManagementFactory.getClassLoadingMXBean().getLoadedClassCount());
+ }
+ }
+ }
+}