-
Type: Task
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: Replication
-
None
-
Fully Compatible
-
Repl 2020-08-10, Repl 2020-08-24
Breaking up SERVER-49379 into smaller tickets. This is the first.
Like serverStatus metrics for elections, create a class ApplicationApiVersionMetrics. An instance of this class will be stored as a decoration on service context. Use ReplicationMetrics as reference.
The class should be populated with the field “appNameVersionTimestamps” of type: map<applicationName, <apiVersion, latest-timestamp>>. Define a mutex as a private field in the class. Lastly, add a member function addVersionTimestamp(applicationName, apiVersion) which acquires the mutex and writes a timestamp to an (applicationName, apiVersion) pair in "appNameVersionTimestamps".
In execCommandDatabase of service_entry_point_common.cpp and in runCommand of strategy.cpp, invoke “addVersionTimestamp”.
- depends on
-
SERVER-49065 Mark API Version 1 commands
- Closed
- is depended on by
-
SERVER-49379 Metrics for Versioned API
- Closed
-
SERVER-49965 Add apiVersion metrics to serverStatus and remove stale metrics
- Closed