Details
Description
The first batch from mongot may not contain the full set of results for the following cases:
- A document may be filtered out by the $idLookup stage
- 16MB batch size limit (more likely with storedSource, since normally mongot only returns _id and a score)
For these cases, mongod should not need to request the full limit for the subsequent getMore. Instead, we could build a method for only requesting (limit - N) results, where N is the number of documents which made it past the $idLookup stage. The actual approach will be left up to the implementation.
Note that for storedSource queries, there is no $idLookup stage so the solution should not be tied to the presence of it. Also there is no guarantee that one of the cases above does not happen again for the subsequent getMore, so the solution should be generic and handle this.
Attachments
Issue Links
- depends on
-
SERVER-76404 Call the no-prefetch TaskExecutorCursor if there is an extractable limit
-
- Closed
-
- is documented by
-
DOCS-16160 Investigate changes in SERVER-74453: Implement support for getMore against a mongot cursor created with a user-defined limit
-
- Closed
-