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

Fix connPoolStats command to work with many TaskExecutor-NetworkInterface pairs

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Fixed
    • Affects Version/s: 3.2.0-rc4
    • Fix Version/s: 3.2.3, 3.3.0
    • Component/s: Networking
    • Labels:
    • Backwards Compatibility:
      Minor Change
    • Operating System:
      ALL
    • Backport Completed:
    • Sprint:
      Platform D (12/11/15), Platforms E (01/08/16)

      Description

      With the completion of SERVER-20944 the results of the connPoolStats command are no longer correct. The command must be changed to collect statistics from all executors in the TaskExecutor pool, for sharded systems. Rather than reporting on each connection pool individually, since many of these pools are sharing workloads, connPoolStats should aggregate and report information from all connection pools within the server.

      This work changes the output format of the command to the following:

      {
              "numClientConnections" : 22,
              "numAScopedConnections" : 0,
              "totalInUse" : 1,
              "totalAvailable" : 2,
              "totalCreated" : 3,
              "hosts" : {
                      "localhost:27018" : {
                              "inUse" : 0,
                              "available" : 2,
                              "created" : 2
                      },
                      "localhost:27017" : {
                              "inUse" : 1,
                              "available" : 0,
                              "created" : 1
                      }
              },
              "replicaSets" : {
              },
              "ok" : 1
      }
      

      This new format is similar to the 3.0 formatting, but differs in the following ways:

      • the reported stats are aggregated across all connection pools in the server
      • the createdByType field has been removed (see SERVER-20283)
      • a new field, totalInUse, reports the number of connections currently in use across all pools
      • within each host's stats, the new inUse field reports the number of connections currently in use across all pools for this particular host

      SERVER-21674 documents a possible future feature to report connection stats separately for each connection pool instead of aggregating these statistics.

        Attachments

          Issue Links

            Activity

              People

              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: