[SERVER-75367] Truncate TemporaryRecordStores for query spilling before dropping Created: 28/Mar/23 Updated: 29/Mar/23 Resolved: 28/Mar/23 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Louis Williams | Assignee: | Backlog - Storage Execution Team |
| Resolution: | Won't Do | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Assigned Teams: |
Storage Execution
|
||||||||
| Participants: | |||||||||
| Description |
|
Because WT prevents us from dropping a table until it has been checkpointed, if I have a query that spills and completes within the span of a single checkpoint, currently we must checkpoint everything in the table just to delete it, which is a waste of work. The WiredTiger fast-truncate can remove the contents of a table very efficiently without performing unnecessary page reads. Before queueing the table for being dropped, we truncate the contents of the table, we avoid creating extra work for the next checkpoint. |
| Comments |
| Comment by Yuhong Zhang [ 28/Mar/23 ] |
|
Fast truncate will force a checkpoint if everything is in memory. So this is not really helping with the issue. |