[DOCS-16488] Investigate changes in SERVER-78877: Why do 'find' and 'aggregate' commands represent maxTimeMS differently? Created: 10/Nov/23  Updated: 22/Jan/24

Status: Backlog
Project: Documentation
Component/s: manual, Server
Affects Version/s: None
Fix Version/s: 7.3.0-rc0

Type: Task Priority: Major - P3
Reporter: Backlog - Core Eng Program Management Team Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: backlog, feature
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Documented
documents SERVER-78877 Why do 'find' and 'aggregate' command... Closed
Participants:
Days since reply: 12 weeks, 5 days ago

 Description   
Original Downstream Change Summary

This change widens the acceptable values of maxTimeMS for find and count (previously [0, INT_MAX], now [0, LLONG_MAX]).

This is backwards compatible; all previously accepted values remain valid.

It is unlikely that any caller depended on an error when providing maxTimeMS greater than INT_MAX, but this is technically an externally visible change.

If other components wish to allow the full range of maxTimeMS to be used, changes to datatypes/validation may be required.

Description of Linked Ticket

Currently FindCommandRequest and AggregateCommandRequest represent maxTimeMS differently:

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.


Generated at Thu Feb 08 08:15:29 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.