[COMPASS-7440] Investigate changes in SERVER-78877: Why do 'find' and 'aggregate' commands represent maxTimeMS differently? Created: 10/Nov/23 Updated: 14/Nov/23 |
|
| Status: | Needs Triage |
| Project: | Compass |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Investigation | Priority: | Major - P3 |
| Reporter: | Backlog - Core Eng Program Management Team | Assignee: | Unassigned |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Epic Link: | COMPASS-7048 | ||||||||
| 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 TicketCurrently 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 |
| Comments |
| Comment by PM Bot [ 10/Nov/23 ] |
|
Fix Version updated for upstream |