[SERVER-74133] Spilling to TemporaryRecordStores in multi-doc transactions does not work as expected Created: 17/Feb/23 Updated: 13/Oct/23 |
|
| Status: | Backlog |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Louis Williams | Assignee: | Backlog - Query Execution |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | query-product-scope-2, query-product-urgency-3, query-product-value-2 | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||
| Assigned Teams: |
Query Execution
|
||||||||||||||||
| Operating System: | ALL | ||||||||||||||||
| Participants: | |||||||||||||||||
| Case: | (copied to CRM) | ||||||||||||||||
| Description |
|
Some query stages implement spilling by writing to a WT table. If this happens inside the context of a user multi-doc transaction, these writes will be included in the same storage engine transaction. As uncommitted writes are not evictable to disk by WiredTiger, this has the consequence of filling up WiredTiger's dirty cache with un-evictable data. This has a few problems:
I see two solutions:
|
| Comments |
| Comment by Garaudy Etienne [ 06/Apr/23 ] |
|
From a product standpoint, we would love to be able to support larger transactions. The downsides of spilling to disk that are outlined above, make it less ideal. |
| Comment by Chris Harris [ 04/Apr/23 ] |
|
Thanks - I'm looking into what the expectations are for transactions in the future |
| Comment by Kyle Suarez [ 04/Apr/23 ] |
|
Sending a friendly ping to christopher.harris@mongodb.com and joe.sack@mongodb.com to please discuss this at your next product triage meeting. |
| Comment by David Storch [ 23/Feb/23 ] |
|
kyle.suarez@mongodb.com sending this to Query Director Triage. |