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

$telemetry returns multiple entries with the same key even though the corresponding queries were distinct shapes

    • Type: Icon: Bug Bug
    • Resolution: Duplicate
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • Labels:
      None
    • Query Integration
    • ALL

      I started the server like this:

      /mongod --setParameter internalQueryConfigureTelemetrySamplingRate=1000000 

      Then I ran the following sequence of commands:

      MongoDB Enterprise > db.c.find({a: {$gt: 3}})
      MongoDB Enterprise > db.c.find({a: {$gt: 3}, b: {$lt: 0}})
      MongoDB Enterprise > db.c.find({a: {$gt: 3}, c: {$elemMatch: {d: 1}}})
      MongoDB Enterprise > db.getSiblingDB("admin").aggregate([{$telemetry: {}}]).pretty()
      {
      	"key" : {
      		"find" : {
      			"find" : "###",
      			"filter" : {
      				"###" : {
      					"###" : "###"
      				}
      			}
      		},
      		"namespace" : "test.c",
      		"applicationName" : "MongoDB Shell"
      	},
      	"metrics" : {
      		....
      	},
      	"asOf" : Timestamp(1668637488, 0)
      }
      {
      	"key" : {
      		"find" : {
      			"find" : "###",
      			"filter" : {
      				"###" : {
      					"###" : "###"
      				}
      			}
      		},
      		"namespace" : "test.c",
      		"applicationName" : "MongoDB Shell"
      	},
      	"metrics" : {
      		...
      	},
      	"asOf" : Timestamp(1668637488, 0)
      }
      {
      	"key" : {
      		"find" : {
      			"find" : "###",
      			"filter" : {
      				"###" : {
      					"###" : "###"
      				}
      			}
      		},
      		"namespace" : "test.c",
      		"applicationName" : "MongoDB Shell"
      	},
      	"metrics" : {
      		...
      	},
      	"asOf" : Timestamp(1668637488, 0)
      }
      

      My expectation was that the key field would be unique and would give some indication of what the three queries I ran against the system were. Instead, the key is always the same, and does not appear to be related to what the original query was.

      I haven't looked into the root cause deeply, but this looks to me like it is a bug in how the redaction is implemented. Therefore, we might want to deal with this problem together with SERVER-71426, which is another redaction-related bug.

            Assignee:
            backlog-query-integration [DO NOT USE] Backlog - Query Integration
            Reporter:
            david.storch@mongodb.com David Storch
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

              Created:
              Updated:
              Resolved: