{ "explainVersion" : "2", "queryPlanner" : { "namespace" : "test.xxx", "indexFilterSet" : false, "parsedQuery" : { "a" : { "$not" : { "$eq" : 2 } } }, "queryHash" : "8952E15C", "planCacheKey" : "FE3D1332", "optimizationTimeMillis" : 4, "optimizedPipeline" : true, "maxIndexedOrSolutionsReached" : false, "maxIndexedAndSolutionsReached" : false, "maxScansToExplodeReached" : false, "prunedSimilarIndexes" : false, "winningPlan" : { "isCached" : true, "queryPlan" : { "stage" : "MATCH", "planNodeId" : 3, "filter" : { "b" : { "$not" : { "$exists" : true } } }, "inputStage" : { "stage" : "FETCH", "planNodeId" : 2, "inputStage" : { "stage" : "IXSCAN", "planNodeId" : 1, "keyPattern" : { "a" : 1, "b" : 1 }, "indexName" : "a_1_b_1", "isMultiKey" : false, "multiKeyPaths" : { "a" : [ ], "b" : [ ] }, "isUnique" : false, "isSparse" : false, "isPartial" : false, "indexVersion" : 2, "direction" : "forward", "indexBounds" : { "a" : [ "[MinKey, 2.0)", "(2.0, MaxKey]" ], "b" : [ "[MinKey, MaxKey]" ] } } } }, "slotBasedPlan" : { "slots" : "$$RESULT=s22 env: { s2 = IndexBounds(\"field #0['a']: [MinKey, 2.0), (2.0, MaxKey], field #1['b']: [MinKey, MaxKey]\"), s6 = {\"a\" : 1, \"b\" : 1}, s10 = Nothing, s21 = true }", "stages" : "[3] filter {!(exists(s24))} \n[2] nlj inner [] [s16, s17, s18, s19, s20] \n left \n [1] branch {s21} [s16, s17, s18, s19, s20] \n [s1, s3, s4, s5, s6] [1] ixscan_generic s2 s5 s1 s3 s4 lowPriority [] @\"9d778a81-62ae-44b8-8c8e-a24abcba26d3\" @\"a_1_b_1\" true \n [s7, s13, s14, s15, s6] [1] nlj inner [] [s8, s9] \n left \n [1] project [s8 = getField(s11, \"l\"), s9 = getField(s11, \"h\")] \n [1] unwind s11 s12 s10 false \n [1] limit 1ll \n [1] coscan \n right \n [1] ixseek s8 s9 s15 s7 s13 s14 [] @\"9d778a81-62ae-44b8-8c8e-a24abcba26d3\" @\"a_1_b_1\" true \n right \n [2] limit 1ll \n [2] seek s16 s22 s23 s17 s18 s19 s20 none none [s24 = b] @\"9d778a81-62ae-44b8-8c8e-a24abcba26d3\" true false \n" } }, "rejectedPlans" : [ ] }, "executionStats" : { "executionSuccess" : true, "nReturned" : 1, "executionTimeMillis" : 11, "totalKeysExamined" : 4, "totalDocsExamined" : 3, "executionStages" : { "stage" : "filter", "planNodeId" : 3, "nReturned" : 1, "executionTimeMillisEstimate" : 0, "opens" : 1, "closes" : 1, "saveState" : 0, "restoreState" : 0, "isEOF" : 1, "numTested" : 3, "filter" : "!(exists(s24)) ", "inputStage" : { "stage" : "nlj", "planNodeId" : 2, "nReturned" : 3, "executionTimeMillisEstimate" : 0, "opens" : 1, "closes" : 1, "saveState" : 0, "restoreState" : 0, "isEOF" : 1, "totalDocsExamined" : 3, "totalKeysExamined" : 4, "collectionScans" : 0, "collectionSeeks" : 3, "indexScans" : 0, "indexSeeks" : 1, "indexesUsed" : [ "a_1_b_1", "a_1_b_1" ], "innerOpens" : 3, "innerCloses" : 1, "outerProjects" : [ ], "outerCorrelated" : [ NumberLong(16), NumberLong(17), NumberLong(18), NumberLong(19), NumberLong(20) ], "outerStage" : { "stage" : "branch", "planNodeId" : 1, "nReturned" : 3, "executionTimeMillisEstimate" : 0, "opens" : 1, "closes" : 1, "saveState" : 0, "restoreState" : 0, "isEOF" : 1, "numTested" : 1, "thenBranchOpens" : 1, "thenBranchCloses" : 1, "elseBranchOpens" : 0, "elseBranchCloses" : 0, "filter" : "s21 ", "thenSlots" : [ NumberLong(1), NumberLong(3), NumberLong(4), NumberLong(5), NumberLong(6) ], "elseSlots" : [ NumberLong(7), NumberLong(13), NumberLong(14), NumberLong(15), NumberLong(6) ], "outputSlots" : [ NumberLong(16), NumberLong(17), NumberLong(18), NumberLong(19), NumberLong(20) ], "thenStage" : { "stage" : "ixscan_generic", "planNodeId" : 1, "nReturned" : 3, "executionTimeMillisEstimate" : 0, "opens" : 1, "closes" : 1, "saveState" : 0, "restoreState" : 0, "isEOF" : 1, "indexName" : "a_1_b_1", "keysExamined" : 4, "seeks" : 2, "numReads" : 5, "indexKeySlot" : 5, "recordIdSlot" : 1, "snapshotIdSlot" : 3, "indexIdentSlot" : 4, "outputSlots" : [ ], "indexKeysToInclude" : "00000000000000000000000000000000" }, "elseStage" : { "stage" : "nlj", "planNodeId" : 1, "nReturned" : 0, "executionTimeMillisEstimate" : 0, "opens" : 0, "closes" : 0, "saveState" : 0, "restoreState" : 0, "isEOF" : 0, "totalDocsExamined" : 0, "totalKeysExamined" : 0, "collectionScans" : 0, "collectionSeeks" : 0, "indexScans" : 0, "indexSeeks" : 0, "indexesUsed" : [ "a_1_b_1" ], "innerOpens" : 0, "innerCloses" : 0, "outerProjects" : [ ], "outerCorrelated" : [ NumberLong(8), NumberLong(9) ], "outerStage" : { "stage" : "project", "planNodeId" : 1, "nReturned" : 0, "executionTimeMillisEstimate" : 0, "opens" : 0, "closes" : 0, "saveState" : 0, "restoreState" : 0, "isEOF" : 0, "projections" : { "8" : "getField(s11, \"l\") ", "9" : "getField(s11, \"h\") " }, "inputStage" : { "stage" : "unwind", "planNodeId" : 1, "nReturned" : 0, "executionTimeMillisEstimate" : 0, "opens" : 0, "closes" : 0, "saveState" : 0, "restoreState" : 0, "isEOF" : 0, "inputSlot" : 10, "outSlot" : 11, "outIndexSlot" : 12, "preserveNullAndEmptyArrays" : 0, "inputStage" : { "stage" : "limit", "planNodeId" : 1, "nReturned" : 0, "executionTimeMillisEstimate" : 0, "opens" : 0, "closes" : 0, "saveState" : 0, "restoreState" : 0, "isEOF" : 0, "inputStage" : { "stage" : "coscan", "planNodeId" : 1, "nReturned" : 0, "executionTimeMillisEstimate" : 0, "opens" : 0, "closes" : 0, "saveState" : 0, "restoreState" : 0, "isEOF" : 0 } } } }, "innerStage" : { "stage" : "ixseek", "planNodeId" : 1, "nReturned" : 0, "executionTimeMillisEstimate" : 0, "opens" : 0, "closes" : 0, "saveState" : 0, "restoreState" : 0, "isEOF" : 0, "indexName" : "a_1_b_1", "keysExamined" : 0, "seeks" : 0, "numReads" : 0, "indexKeySlot" : 15, "recordIdSlot" : 7, "snapshotIdSlot" : 13, "indexIdentSlot" : 14, "outputSlots" : [ ], "indexKeysToInclude" : "00000000000000000000000000000000", "seekKeyLow" : "s8 ", "seekKeyHigh" : "s9 " } } }, "innerStage" : { "stage" : "limit", "planNodeId" : 2, "nReturned" : 3, "executionTimeMillisEstimate" : 0, "opens" : 3, "closes" : 1, "saveState" : 0, "restoreState" : 0, "isEOF" : 1, "limit" : 1, "inputStage" : { "stage" : "seek", "planNodeId" : 2, "nReturned" : 3, "executionTimeMillisEstimate" : 0, "opens" : 3, "closes" : 1, "saveState" : 0, "restoreState" : 0, "isEOF" : 0, "numReads" : 3, "recordSlot" : 22, "recordIdSlot" : 23, "seekRecordIdSlot" : 16, "snapshotIdSlot" : 17, "indexIdentSlot" : 18, "indexKeySlot" : 19, "indexKeyPatternSlot" : 20, "scanFieldNames" : [ "b" ], "scanFieldSlots" : [ NumberLong(24) ] } } } } }, "command" : { "aggregate" : "xxx", "pipeline" : [ { "$match" : { "a" : { "$ne" : 2 } } }, { "$match" : { "b" : { "$exists" : false } } } ], "cursor" : { }, "$db" : "test" }, "serverInfo" : { "host" : "ip-10-0-106-40", "port" : 27017, "version" : "8.0.0-alpha", "gitVersion" : "2303b0fec38ba62b6199cd9e83932edd89c61fab" }, "serverParameters" : { "internalQueryFacetBufferSizeBytes" : 104857600, "internalQueryFacetMaxOutputDocSizeBytes" : 104857600, "internalLookupStageIntermediateDocumentMaxSizeBytes" : 104857600, "internalDocumentSourceGroupMaxMemoryBytes" : 104857600, "internalQueryMaxBlockingSortMemoryUsageBytes" : 104857600, "internalQueryProhibitBlockingMergeOnMongoS" : 0, "internalQueryMaxAddToSetBytes" : 104857600, "internalDocumentSourceSetWindowFieldsMaxMemoryBytes" : 104857600, "internalQueryFrameworkControl" : "trySbeEngine" }, "ok" : 1 }