[SERVER-37124] Retry full upsert path when duplicate key exception matches exact query predicate Created: 13/Sep/18 Updated: 29/Oct/23 Resolved: 29/Nov/18 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Write Ops |
| Affects Version/s: | None |
| Fix Version/s: | 4.1.6 |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Asya Kamsky | Assignee: | James Wahlin |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Sprint: | Query 2018-11-05, Query 2018-11-19, Query 2018-12-03 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Participants: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Case: | (copied to CRM) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Linked BF Score: | 95 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Description |
|
Subset of cases described in Example:
can safely retry full upsert if it receives error "E11000 duplicate key error collection: bar.foo index: id dup key: { : 5.0 }" |
| Comments |
| Comment by Githook User [ 29/Nov/18 ] |
|
Author: {'name': 'James Wahlin', 'email': 'james@mongodb.com', 'username': 'jameswahlin'}Message: |
| Comment by Githook User [ 16/Nov/18 ] |
|
Author: {'name': 'James Wahlin', 'email': 'james@mongodb.com', 'username': 'jameswahlin'}Message: |
| Comment by Andy Schwerin [ 11/Oct/18 ] |
|
If we implement this, we should do so by extending the DuplicateKey error's "extra error info" type to include the key pattern, rather than re-parsing the error message. |
| Comment by Asya Kamsky [ 10/Oct/18 ] |
|
Storage performed the work providing the information about which index caused the duplicate error. |