Skip to content

Commit cc67275

Browse files
authored
[DE-876] added missing statistics to CursorStats: documentLookups, intermediat… (#580)
* added missing statistics to CursorStats: documentLookups, intermediateCommits, seeks * test fix
1 parent 00449ee commit cc67275

File tree

3 files changed

+34
-5
lines changed

3 files changed

+34
-5
lines changed

core/src/main/java/com/arangodb/entity/CursorStats.java

+21
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,9 @@ public final class CursorStats {
2020
private Long fullCount;
2121
private Double executionTime;
2222
private Long peakMemoryUsage;
23+
private Integer documentLookups;
24+
private Integer intermediateCommits;
25+
private Integer seeks;
2326

2427
@JsonAnySetter
2528
public void add(String key, Object value) {
@@ -142,4 +145,22 @@ public Double getExecutionTime() {
142145
public Long getPeakMemoryUsage() {
143146
return peakMemoryUsage;
144147
}
148+
149+
public Integer getDocumentLookups() {
150+
return documentLookups;
151+
}
152+
153+
/**
154+
* @return The total number of intermediate commits the query has performed. This number can only be greater than
155+
* zero for data-modification queries that perform modifications beyond the `--rocksdb.intermediate-commit-count`
156+
* or `--rocksdb.intermediate-commit-size` thresholds. In a cluster, the intermediate commits are tracked per
157+
* DB-Server that participates in the query and are summed up in the end.
158+
*/
159+
public Integer getIntermediateCommits() {
160+
return intermediateCommits;
161+
}
162+
163+
public Integer getSeeks() {
164+
return seeks;
165+
}
145166
}

test-functional/src/test/java/com/arangodb/ArangoDatabaseAsyncTest.java

+5
Original file line numberDiff line numberDiff line change
@@ -630,6 +630,11 @@ void queryStats(ArangoDatabaseAsync db) throws ExecutionException, InterruptedEx
630630
assertThat(cursor.getExtra().getStats().getFiltered()).isNotNull();
631631
assertThat(cursor.getExtra().getStats().getExecutionTime()).isNotNull();
632632
assertThat(cursor.getExtra().getStats().getPeakMemoryUsage()).isNotNull();
633+
assertThat(cursor.getExtra().getStats().getIntermediateCommits()).isNotNull();
634+
if (isAtLeastVersion(3, 12)) {
635+
assertThat(cursor.getExtra().getStats().getDocumentLookups()).isNotNull();
636+
assertThat(cursor.getExtra().getStats().getSeeks()).isNotNull();
637+
}
633638
}
634639

635640
@ParameterizedTest

test-functional/src/test/java/com/arangodb/ArangoDatabaseTest.java

+8-5
Original file line numberDiff line numberDiff line change
@@ -662,11 +662,14 @@ void queryStats(ArangoDatabase db) {
662662
assertThat(cursor.getStats().getFiltered()).isNotNull();
663663
assertThat(cursor.getStats().getExecutionTime()).isNotNull();
664664
assertThat(cursor.getStats().getPeakMemoryUsage()).isNotNull();
665-
if (isAtLeastVersion(3, 10)) {
666-
assertThat(cursor.getStats().getCursorsCreated()).isNotNull();
667-
assertThat(cursor.getStats().getCursorsRearmed()).isNotNull();
668-
assertThat(cursor.getStats().getCacheHits()).isNotNull();
669-
assertThat(cursor.getStats().getCacheMisses()).isNotNull();
665+
assertThat(cursor.getStats().getCursorsCreated()).isNotNull();
666+
assertThat(cursor.getStats().getCursorsRearmed()).isNotNull();
667+
assertThat(cursor.getStats().getCacheHits()).isNotNull();
668+
assertThat(cursor.getStats().getCacheMisses()).isNotNull();
669+
assertThat(cursor.getStats().getIntermediateCommits()).isNotNull();
670+
if (isAtLeastVersion(3, 12)) {
671+
assertThat(cursor.getStats().getDocumentLookups()).isNotNull();
672+
assertThat(cursor.getStats().getSeeks()).isNotNull();
670673
}
671674
}
672675

0 commit comments

Comments
 (0)