[COMPASS-6122] Investigate changes in SERVER-67363: $indexStats aggregations seem to increment the top counter twice Created: 13/Sep/22  Updated: 09/Dec/22  Resolved: 06/Dec/22

Status: Closed
Project: Compass
Component/s: None
Affects Version/s: None
Fix Version/s: No version

Type: Investigation Priority: Major - P3
Reporter: Backlog - Core Eng Program Management Team Assignee: Unassigned
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
depends on SERVER-67363 $indexStats aggregations seem to incr... Closed
Epic Link: COMPASS-5985
Documentation Changes: Not Needed

 Description   
Original Downstream Change Summary

Fixed the bug when all aggregations with stage $indexStats incremented Top counters "readLock" and "commands" twice instead of only once.

Description of Linked Ticket

This addition to jstests/core/top.js seems to cause it to fail:

diff --git a/jstests/core/top.js b/jstests/core/top.js
index 20630f274c9..490865442e5 100644
--- a/jstests/core/top.js
+++ b/jstests/core/top.js
@@ -125,11 +125,19 @@ for (i = 0; i < numRecords; i++) {
 }
 lastTop = assertTopDiffEq(testColl, lastTop, "commands", numRecords);
 
+// aggregate
+assert.eq(0, testColl.aggregate([]).itcount());  // All records were just deleted.
+lastTop = assertTopDiffEq(testColl, lastTop, "commands", 1);
+
 // getIndexes
 assert.eq(1, testColl.getIndexes().length);
 assertTopDiffEq(testColl, lastTop, "commands", 1);
 lastTop = assertTopDiffEq(testColl, lastTop, "readLock", 1);
 
+// aggregate with $indexStats
+assert.eq(1, testColl.aggregate([{$indexStats: {}}]).itcount());
+lastTop = assertTopDiffEq(testColl, lastTop, "commands", 1);
+
 // createIndex

Specifically, that last assertion fails since "commands" is incremented by 2 instead of 1.



 Comments   
Comment by Rhys Howell [ 06/Dec/22 ]

No impact on our tools.

Generated at Wed Feb 07 22:41:59 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.