mirror of
https://github.com/alibaba/druid.git
synced 2023-03-04 19:17:16 +00:00
improve wall filter
This commit is contained in:
@@ -33,6 +33,9 @@ public class WallTableStat {
|
||||
private volatile long alterCount;
|
||||
private volatile long dropCount;
|
||||
private volatile long replaceCount;
|
||||
private volatile long deleteDataCount;
|
||||
private volatile long updateDataCount;
|
||||
private volatile long fetchRowCount;
|
||||
|
||||
final static AtomicLongFieldUpdater<WallTableStat> selectCountUpdater = AtomicLongFieldUpdater.newUpdater(WallTableStat.class,
|
||||
"selectCount");
|
||||
@@ -55,6 +58,14 @@ public class WallTableStat {
|
||||
final static AtomicLongFieldUpdater<WallTableStat> replaceCountUpdater = AtomicLongFieldUpdater.newUpdater(WallTableStat.class,
|
||||
"replaceCount");
|
||||
|
||||
final static AtomicLongFieldUpdater<WallTableStat> deleteDataCountUpdater = AtomicLongFieldUpdater.newUpdater(WallTableStat.class,
|
||||
"deleteDataCount");
|
||||
final static AtomicLongFieldUpdater<WallTableStat> updateDataCountUpdater = AtomicLongFieldUpdater.newUpdater(WallTableStat.class,
|
||||
"updateDataCount");
|
||||
|
||||
final static AtomicLongFieldUpdater<WallTableStat> fetchRowCountUpdater = AtomicLongFieldUpdater.newUpdater(WallTableStat.class,
|
||||
"fetchRowCount");
|
||||
|
||||
public WallTableStat(){
|
||||
|
||||
}
|
||||
@@ -94,11 +105,35 @@ public class WallTableStat {
|
||||
public long getDropCount() {
|
||||
return dropCount;
|
||||
}
|
||||
|
||||
|
||||
public long getReplaceCount() {
|
||||
return replaceCount;
|
||||
}
|
||||
|
||||
public long getDeleteDataCount() {
|
||||
return this.deleteDataCount;
|
||||
}
|
||||
|
||||
public void addDeleteDataCount(long delta) {
|
||||
deleteDataCountUpdater.addAndGet(this, delta);
|
||||
}
|
||||
|
||||
public long getUpdateDataCount() {
|
||||
return this.updateDataCount;
|
||||
}
|
||||
|
||||
public void addUpdateDataCount(long delta) {
|
||||
updateDataCountUpdater.addAndGet(this, delta);
|
||||
}
|
||||
|
||||
public long getFetchRowCount() {
|
||||
return fetchRowCount;
|
||||
}
|
||||
|
||||
public void addFetchRowCount(long delta) {
|
||||
fetchRowCountUpdater.addAndGet(this, delta);
|
||||
}
|
||||
|
||||
public void addSqlTableStat(WallSqlTableStat stat) {
|
||||
{
|
||||
long val = stat.getSelectCount();
|
||||
@@ -202,6 +237,15 @@ public class WallTableStat {
|
||||
if (replaceCount > 0) {
|
||||
map.put("replaceCount", replaceCount);
|
||||
}
|
||||
if (deleteDataCount > 0) {
|
||||
map.put("deleteDataCount", deleteDataCount);
|
||||
}
|
||||
if (fetchRowCount > 0) {
|
||||
map.put("fetchRowCount", fetchRowCount);
|
||||
}
|
||||
if (updateDataCount > 0) {
|
||||
map.put("updateDataCount", updateDataCount);
|
||||
}
|
||||
return map;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user