>From Peeyush Gupta <[email protected]>:
Peeyush Gupta has uploaded this change for review. (
https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/17799 )
Change subject: [NO ISSUE][OTH] Add counter to track total number of requests
......................................................................
[NO ISSUE][OTH] Add counter to track total number of requests
- user model changes: no
- storage format changes: no
- interface changes: yes
Change-Id: I17347c7d03c536ecb1d3b59ccb483a2b01664747
---
M
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/IRequestTracker.java
M
asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/utils/RequestTracker.java
2 files changed, 27 insertions(+), 0 deletions(-)
git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb
refs/changes/99/17799/1
diff --git
a/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/IRequestTracker.java
b/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/IRequestTracker.java
index a3ddb30..0019015 100644
---
a/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/IRequestTracker.java
+++
b/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/IRequestTracker.java
@@ -75,4 +75,10 @@
* @return the recently completed requests
*/
Collection<IClientRequest> getCompletedRequests();
+
+ /**
+ *
+ * @return the total number of requests since cluster start/restart
+ */
+ long getTotalNumberOfRequests();
}
diff --git
a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/utils/RequestTracker.java
b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/utils/RequestTracker.java
index 333c709..c9425c6 100644
---
a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/utils/RequestTracker.java
+++
b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/utils/RequestTracker.java
@@ -24,6 +24,7 @@
import java.util.Map;
import java.util.Objects;
import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.atomic.AtomicLong;
import org.apache.asterix.common.api.IClientRequest;
import org.apache.asterix.common.api.IRequestTracker;
@@ -37,10 +38,12 @@
private final Map<String, IClientRequest> clientIdRequests = new
ConcurrentHashMap<>();
private final CircularFifoQueue<IClientRequest> completedRequests;
private final ICcApplicationContext ccAppCtx;
+ private final AtomicLong numRequests;
public RequestTracker(ICcApplicationContext ccAppCtx) {
this.ccAppCtx = ccAppCtx;
completedRequests = new
CircularFifoQueue<>(ccAppCtx.getExternalProperties().getRequestsArchiveSize());
+ numRequests = new AtomicLong(0);
}
@Override
@@ -57,6 +60,7 @@
@Override
public void track(IClientRequest request) {
runningRequests.put(request.getId(), request);
+ numRequests.incrementAndGet();
if (request.getClientContextId() != null) {
clientIdRequests.put(request.getClientContextId(), request);
}
@@ -112,4 +116,8 @@
private synchronized void archive(IClientRequest request) {
completedRequests.add(request);
}
+
+ public long getTotalNumberOfRequests() {
+ return numRequests.get();
+ }
}
--
To view, visit https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/17799
To unsubscribe, or for help writing mail filters, visit
https://asterix-gerrit.ics.uci.edu/settings
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Change-Id: I17347c7d03c536ecb1d3b59ccb483a2b01664747
Gerrit-Change-Number: 17799
Gerrit-PatchSet: 1
Gerrit-Owner: Peeyush Gupta <[email protected]>
Gerrit-MessageType: newchange