Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-96084

Exclude internal commands from api version metric

    • Type: Icon: Task Task
    • Resolution: Unresolved
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • Query Optimization

      In general, the customer can tell if an application has stable API enabled if they have the appName set by running: db.runCommand( { serverStatus: 1 } ).metrics.apiVersions.

      For example, when the customer ran commands with `apiStrict:true` and `apiVersion:1`, they expect the apiVersion metric only has version "1".

      "apiVersions": { "myApp": [ "1" ],....}

      But, if internal commands also runs ( such as run find agains config.transctions) , they get the apiVersion metric with "default". It is not expected.

      "apiVersions": { "myApp": [ "default", "1" ],...}

      To fix this issue, we need to exclude the api version of internal commands from api version metric code which is used for building the "apiVersions" section of the serverStatus output.

            Assignee:
            christopher.harris@mongodb.com Chris Harris
            Reporter:
            sophia.tan@mongodb.com Sophia Tan
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated: