Uploaded image for project: 'Documentation'
  1. Documentation
  2. DOCS-15069

Investigate changes in SERVER-58506: Command to expose settability for Server Parameters

      Downstream Change Summary

      --> The existing syntax for getParameter is almost entirely unchanged. The one exception is if someone passed a document as the value for the 'getParameter' key, i.e. sent the command as:
      db.adminCommand( {getParameter:

      Unknown macro: { <any doc here>}

      , ...} })
      This format was undocumented (the docs said the value here should be numeric), but the server would still have returned results/not error'd, interpreting the above case as (getParameter: 1).

      --> An additional syntax is added for getParameter, where the value of the 'getParameter' key in the command can be a document that requests more options.

      For example, with the old syntax, you can do:

      db.adminCommand( {getParameter: 1, exampleParameter: 1}

      ...(returns)

      Unknown macro: {exampleParameter}

      this syntax still works. Now, you can additionally do

      db.adminCommand( 

      Unknown macro: {getParameter}

      , exampleParameter: 1}
      which returns:

      {exampleParameter: {value: 500, settableAtRuntime: true, settableAtStartup: false}}
      You can get the detailed information for all parameters simply by doing:

      db.adminCommand({getParameter: {showDetails: true, allParameters: true}}

      Description of Linked Ticket

      Currently there's no way from outside of a running mongo process to tell whether a given server parameter controlled via get/setParameter is settable at runtime (vs. just at startup). Providing a mechanism to access that information (either by altering getParameter, or with a new command) would make it easier to write tools like the automation agent by making the requirements around altering a setParameter much more discoverable.

      Acceptance Criteria

      The goal here would be command that could be invoked to:

      • Return a list of all available setParameters (a la getParameter: "*")
      • For each parameter, return if the value was settable at startup, runtime or both

            Assignee:
            joseph.dougherty@mongodb.com Joseph Dougherty
            Reporter:
            backlog-server-pm Backlog - Core Eng Program Management Team
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved:
              2 years, 12 weeks ago