[DOCS-14459] Investigate changes in SERVER-56550: Require Versioned API options for getMore and transaction-continuing commands Created: 16/May/21 Updated: 13/Nov/23 Resolved: 20/May/21 |
|
| Status: | Closed |
| Project: | Documentation |
| Component/s: | manual, Server |
| Affects Version/s: | None |
| Fix Version/s: | 5.0.0-rc0, Server_Docs_20231030, Server_Docs_20231106, Server_Docs_20231105, Server_Docs_20231113 |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | Backlog - Core Eng Program Management Team | Assignee: | Joseph Dougherty |
| Resolution: | Won't Do | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||
| Participants: | |||||||||||||||||
| Days since reply: | 2 years, 37 weeks, 6 days ago | ||||||||||||||||
| Epic Link: | DOCSP-14217 | ||||||||||||||||
| Description |
DescriptionDownstream Change Summary If you're a driver author, this affects you. If you're a driver user, you may see "APIMismatchError" when you use the Versioned API with the latest server, until your driver implements DRIVERS-1720. If you don't use the Versioned API this doesn't affect you. There are two scenarios affected: 1. A driver passes any API parameters (apiVersion, apiStrict, apiDeprecation) to a cursor-creating command, such as find, aggregate, listCollections. Let's call the cursor-creating command an "initiating command" and getMore a "continuing command". 2. A driver passes any API parameters to the first command in a transaction. Let's call the first command an "initiating command", and all other commands in the transaction (including commit/abortTransaction) "continuing commands". In the beginning, continuing commands rejected all API params. They used the same API params as the initiating command. But the Database Experience (DBX) team told me that special-casing continuing commands made driver work harder, so we changed it. Recently, I changed continuing commands to accept either the same API params as the initiating command, or no API params ( Finally, I changed continuing commands to require the same API params as initiating commands. So if a driver passes any (or no) API params to an initiating command it must pass the same (or no) API params to all continuing commands. Description of Linked Ticket Once the dust settles on Scope of changesImpact to Other DocsMVP (Work and Date)Resources (Scope or Design Docs, Invision, etc.) |
| Comments |
| Comment by Joseph Dougherty [ 20/May/21 ] |
|
Closing as this is a duplicate of https://jira.mongodb.org/browse/DOCS-14397. |
| Comment by Joseph Dougherty [ 20/May/21 ] |
|
jeffrey.allen Yes, it certainly looks that way to me! I'll close this one out. Thanks! |
| Comment by Jeffrey Allen [ 17/May/21 ] |
|
I think this is a duplicate of |