Currently FindCommandRequest and AggregateCommandRequest represent maxTimeMS differently:
- 'find' uses int32: https://github.com/10gen/mongo/blob/fd6296cfb951f0593d94ae512c795f02dccf729f/src/mongo/db/query/find_command.idl#L63-L67
- 'aggregate' uses safeInt64: https://github.com/10gen/mongo/blob/fd6296cfb951f0593d94ae512c795f02dccf729f/src/mongo/db/pipeline/aggregate_command.idl#L205-L210
Not only is the C++ type different, but also the BSON type and the parsing/validation rules are different. For simplicity, can we make them the same? Especially since we translate 'find' requests to 'aggregate' (for views), you would think they have the same set of valid values.
Looks like the last ticket to touch this was SERVER-54925, so there may be more discussion or explanation there.
- is depended on by
-
COMPASS-7440 Investigate changes in SERVER-78877: Why do 'find' and 'aggregate' commands represent maxTimeMS differently?
- Closed
-
TOOLS-3418 Investigate changes in SERVER-78877: Why do 'find' and 'aggregate' commands represent maxTimeMS differently?
- Closed