-
Type: Bug
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
Multiple tests are failing in latest around aggregate explain query responses. Our tests are complaining the "stages" property is missing.
See https://spruce.mongodb.com/version/61aa67893627e03053ffbba1/tasks?sorts=STATUS%3AASC%3BBASE_STATUS%3ADESC&variant=ubuntu-18.04-erbium?
and https://spruce.mongodb.com/version/61aa5a3f562343496400ecdc/tasks?sorts=STATUS%3AASC%3BBASE_STATUS%3ADESC
Example test failure:
[2021/12/03 18:25:50.664] [0m 5) Explain [2021/12/03 18:25:50.664] should honor legacy explain with aggregate: [2021/12/03 18:25:50.664] [0m[31m Uncaught AssertionError: expected { serverInfo: [2021/12/03 18:25:50.664] { host: 'ip-10-122-1-150', [2021/12/03 18:25:50.664] port: 27017, [2021/12/03 18:25:50.664] version: '5.2.0-alpha-857-gcf8ddbd', [2021/12/03 18:25:50.664] gitVersion: 'cf8ddbdf99ae7fb2d96ca9f350224ffa193e40b3' }, [2021/12/03 18:25:50.664] serverParameters: [2021/12/03 18:25:50.664] { internalQueryFacetBufferSizeBytes: 104857600, [2021/12/03 18:25:50.664] internalQueryFacetMaxOutputDocSizeBytes: 104857600, [2021/12/03 18:25:50.664] internalLookupStageIntermediateDocumentMaxSizeBytes: 104857600, [2021/12/03 18:25:50.664] internalDocumentSourceGroupMaxMemoryBytes: 104857600, [2021/12/03 18:25:50.664] internalQueryMaxBlockingSortMemoryUsageBytes: 104857600, [2021/12/03 18:25:50.664] internalQueryProhibitBlockingMergeOnMongoS: 0, [2021/12/03 18:25:50.664] internalQueryMaxAddToSetBytes: 104857600, [2021/12/03 18:25:50.664] internalDocumentSourceSetWindowFieldsMaxMemoryBytes: 104857600 }, [2021/12/03 18:25:50.664] explainVersion: '2', [2021/12/03 18:25:50.664] queryPlanner: [2021/12/03 18:25:50.664] { namespace: 'shouldHonorLegacyExplainWithAggregate.test', [2021/12/03 18:25:50.664] indexFilterSet: false, [2021/12/03 18:25:50.664] parsedQuery: {}, [2021/12/03 18:25:50.664] optimizedPipeline: true, [2021/12/03 18:25:50.664] maxIndexedOrSolutionsReached: false, [2021/12/03 18:25:50.664] maxIndexedAndSolutionsReached: false, [2021/12/03 18:25:50.664] maxScansToExplodeReached: false, [2021/12/03 18:25:50.664] winningPlan: { queryPlan: [Object], slotBasedPlan: [Object] }, [2021/12/03 18:25:50.664] rejectedPlans: [] }, [2021/12/03 18:25:50.664] executionStats: [2021/12/03 18:25:50.664] { executionSuccess: true, [2021/12/03 18:25:50.664] nReturned: 1, [2021/12/03 18:25:50.664] executionTimeMillis: 0, [2021/12/03 18:25:50.664] totalKeysExamined: 0, [2021/12/03 18:25:50.664] totalDocsExamined: 1, [2021/12/03 18:25:50.664] executionStages: [2021/12/03 18:25:50.664] { stage: 'mkbson', [2021/12/03 18:25:50.664] planNodeId: 2, [2021/12/03 18:25:50.664] nReturned: 1, [2021/12/03 18:25:50.664] executionTimeMillisEstimate: 0, [2021/12/03 18:25:50.664] opens: 1, [2021/12/03 18:25:50.664] closes: 1, [2021/12/03 18:25:50.664] saveState: 0, [2021/12/03 18:25:50.664] restoreState: 0, [2021/12/03 18:25:50.664] isEOF: 1, [2021/12/03 18:25:50.664] objSlot: 9, [2021/12/03 18:25:50.664] fields: [], [2021/12/03 18:25:50.664] projectFields: [Object], [2021/12/03 18:25:50.664] projectSlots: [Object], [2021/12/03 18:25:50.664] forceNewObject: true, [2021/12/03 18:25:50.664] returnOldObject: false, [2021/12/03 18:25:50.664] inputStage: [Object] }, [2021/12/03 18:25:50.664] allPlansExecution: [] }, [2021/12/03 18:25:50.664] command: [2021/12/03 18:25:50.664] { aggregate: 'test', [2021/12/03 18:25:50.664] pipeline: [ [Object], [Object] ], [2021/12/03 18:25:50.664] cursor: {}, [2021/12/03 18:25:50.664] let: {}, [2021/12/03 18:25:50.664] fromMongos: false, [2021/12/03 18:25:50.664] '$db': 'shouldHonorLegacyExplainWithAggregate' }, [2021/12/03 18:25:50.664] ok: 1, [2021/12/03 18:25:50.664] '$clusterTime': [2021/12/03 18:25:50.664] { clusterTime: new Timestamp({ t: 1638555761, i: 28 }), [2021/12/03 18:25:50.664] signature: [2021/12/03 18:25:50.664] { hash: new Binary(Buffer.from("0000000000000000000000000000000000000000", "hex"), 0), [2021/12/03 18:25:50.664] keyId: 0 } }, [2021/12/03 18:25:50.664] operationTime: new Timestamp({ t: 1638555761, i: 28 }) } to have property 'stages'[0m[90m [2021/12/03 18:25:50.664] at /data/mci/40251f37162ccb600795d7cd8cd033f8/src/test/functional/explain.test.js:757:36 [2021/12/03 18:25:50.664] at /data/mci/40251f37162ccb600795d7cd8cd033f8/src/src/utils.ts:622:5 [2021/12/03 18:25:50.664] at /data/mci/40251f37162ccb600795d7cd8cd033f8/src/src/operations/execute_operation.ts:111:45 [2021/12/03 18:25:50.665] at /data/mci/40251f37162ccb600795d7cd8cd033f8/src/src/utils.ts:622:5 [2021/12/03 18:25:50.665] at completeEndSession (src/sessions.ts:281:9) [2021/12/03 18:25:50.665] at /data/mci/40251f37162ccb600795d7cd8cd033f8/src/src/sessions.ts:293:7 [2021/12/03 18:25:50.665] at maybePromise (src/utils.ts:607:3) [2021/12/03 18:25:50.665] at Proxy.endSession (src/sessions.ts:263:24) [2021/12/03 18:25:50.665] at /data/mci/40251f37162ccb600795d7cd8cd033f8/src/src/operations/execute_operation.ts:111:26 [2021/12/03 18:25:50.665] at callbackWithRetry (src/operations/execute_operation.ts:176:14) [2021/12/03 18:25:50.665] at /data/mci/40251f37162ccb600795d7cd8cd033f8/src/src/cmap/connection_pool.ts:469:13 [2021/12/03 18:25:50.665] at handleOperationResult (src/sdam/server.ts:608:5) [2021/12/03 18:25:50.665] at MessageStream.messageHandler (src/cmap/connection.ts:753:5) [2021/12/03 18:25:50.665] at MessageStream.EventEmitter.emit (domain.js:483:12) [2021/12/03 18:25:50.665] at processIncomingData (src/cmap/message_stream.ts:167:12) [2021/12/03 18:25:50.665] at MessageStream._write (src/cmap/message_stream.ts:64:5) [2021/12/03 18:25:50.665] at doWrite (_stream_writable.js:403:12) [2021/12/03 18:25:50.665] at writeOrBuffer (_stream_writable.js:387:5) [2021/12/03 18:25:50.665] at MessageStream.Writable.write (_stream_writable.js:318:11) [2021/12/03 18:25:50.665] at Socket.ondata (_stream_readable.js:718:22) [2021/12/03 18:25:50.665] at Socket.EventEmitter.emit (domain.js:483:12) [2021/12/03 18:25:50.665] at addChunk (_stream_readable.js:297:12) [2021/12/03 18:25:50.665] at readableAddChunk (_stream_readable.js:272:9) [2021/12/03 18:25:50.665] at Socket.Readable.push (_stream_readable.js:213:10) [2021/12/03 18:25:50.665] at TCP.onStreamRead (internal/stream_base_commons.js:188:23)