startTransactionCount

git-svn-id: http://code.alibabatech.com/svn/druid/trunk@738 b9813039-fb51-4c41-a8b9-e21c2acb5095
This commit is contained in:
wenshao
2011-09-11 10:42:56 +00:00
parent b4b98d784c
commit dfb616aed1
4 changed files with 22 additions and 3 deletions
@@ -172,24 +172,33 @@ public abstract class DruidAbstractDataSource implements DruidAbstractDataSource
protected boolean breakAfterAcquireFailure = false;
protected final AtomicLong commitCount = new AtomicLong();
protected final AtomicLong startTransactionCount = new AtomicLong();
protected final AtomicLong rollbackCount = new AtomicLong();
public long getCommitCount() {
return commitCount.get();
}
public void incrementCommitCount() {
commitCount.incrementAndGet();
}
public long getRollbackCount() {
return rollbackCount.get();
}
public void incrementRollbackCount() {
rollbackCount.incrementAndGet();
}
public long getStartTransactionCount() {
return startTransactionCount.get();
}
public void incrementStartTransactionCount() {
startTransactionCount.incrementAndGet();
}
public boolean isBreakAfterAcquireFailure() {
return breakAfterAcquireFailure;
}
@@ -39,6 +39,8 @@ public interface DruidAbstractDataSourceMBean {
long getCommitCount();
long getRollbackCount();
long getStartTransactionCount();
int getQueryTimeout();
@@ -127,6 +127,10 @@ public class DruidDataSource extends DruidAbstractDataSource implements DruidDat
} finally {
lock.unlock();
}
commitCount.set(0);
rollbackCount.set(0);
startTransactionCount.set(0);
}
public boolean isEnable() {
@@ -528,6 +528,10 @@ public class PoolableConnection implements PooledConnection, Connection {
checkOpen();
try {
if ((!autoCommit) && conn.getAutoCommit()) {
holder.getDataSource().incrementStartTransactionCount();
}
conn.setAutoCommit(autoCommit);
} catch (SQLException ex) {
handleException(ex);