[SERVER-69093] Use range bounded cursors for restoring cursors in the record store after yielding Created: 23/Aug/22 Updated: 29/Oct/23 Resolved: 22/Jun/23 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 7.1.0-rc0 |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Shin Yee Tan | Assignee: | Erin Liang |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||||||
| Assigned Teams: |
Storage Execution
|
||||||||||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||||||||||
| Sprint: | Execution NAMR Team 2023-06-26 | ||||||||||||||||||||
| Participants: | |||||||||||||||||||||
| Linked BF Score: | 35 | ||||||||||||||||||||
| Description |
|
Every query (reads and writes) saves and restores cursors to support yielding. When restoring the cursor, we reposition it by calling search_near() on the _lastReturnedId which we stored when we called next() prior to yielding the cursor. We can use bounded cursors to improve the performance when repositioning the cursor in the WT record store. This could be useful for example for capped collections when we're making a lot of deletes and the cursor unnecessarily traverses the deleted records to reposition itself. |
| Comments |
| Comment by Githook User [ 22/Jun/23 ] |
|
Author: {'name': 'Erin Liang', 'email': '59406045+erl-ang@users.noreply.github.com', 'username': 'erl-ang'}Message: |
| Comment by Louis Williams [ 08/Nov/22 ] |
|
luke.pearson@mongodb.com that would be |