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

Include queryHash in explain output

    • Type: Icon: Improvement Improvement
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 4.1.2
    • Affects Version/s: None
    • Component/s: Querying
    • None
    • Fully Compatible
    • Query 2018-08-13, Query 2018-08-27

      In SERVER-35981 and /SERVER-35982 we have added queryHash to various query debug mechanisms, an 8 character hex string representing a 32 bit unsigned hash value. This hash can identify instances of queries that the system considers of the shape, and thus share the same plan cache entry. The intention is that this hash will help to correlate events related to the same plan cache entry, which is important for diagnosing query performance issues in which the plan cache is involved.

      This ticket also tracks the work to add queryHash to the queryPlanner section of explain output. For instance, the output could look something like this for a simple query:

      MongoDB Enterprise > db.c.find({a: 2}).explain()
      {
      	"queryPlanner" : {
      		"plannerVersion" : 1,
      		"namespace" : "test.c",
      		"indexFilterSet" : false,
      		"parsedQuery" : {
      			"a" : {
      				"$eq" : 2
      			}
      		},
      		"queryHash" : "100FCEBA", // THIS IS NEW!
      		"winningPlan" : {
      			"stage" : "FETCH",
      			"inputStage" : {
      				"stage" : "IXSCAN",
      				"keyPattern" : {
      					"a" : 1
      				},
      				"indexName" : "a_1",
      				"isMultiKey" : false,
      				"multiKeyPaths" : {
      					"a" : [ ]
      				},
      				"isUnique" : false,
      				"isSparse" : false,
      				"isPartial" : false,
      				"indexVersion" : 2,
      				"direction" : "forward",
      				"indexBounds" : {
      					"a" : [
      						"[2.0, 2.0]"
      					]
      				}
      			}
      		},
      		"rejectedPlans" : [ ]
      	},
      	"serverInfo" : {
      		"host" : "storchbox",
      		"port" : 27017,
      		"version" : "0.0.0",
      		"gitVersion" : "unknown"
      	},
      	"ok" : 1
      }
      

            Assignee:
            david.storch@mongodb.com David Storch
            Reporter:
            david.storch@mongodb.com David Storch
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: