[SERVER-36388] inMemory storage engines should not set allowDiskUse for external sorts Created: 01/Aug/18 Updated: 27/Oct/23 Resolved: 14/Aug/18 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Querying, Storage |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Eric Milkie | Assignee: | Asya Kamsky |
| Resolution: | Works as Designed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Participants: | |||||||||
| Description |
|
Currently, the external sorter is used by foreground index builds and several aggregation stages. The use of the external sorter ignores whether the storage engine is "in memory", which means that by default the external sorter will spill to disk even when using an inMemory storage engine. |
| Comments |
| Comment by Asya Kamsky [ 14/Aug/18 ] |
|
Closing as I don't believe we should change this.
|
| Comment by Asya Kamsky [ 14/Aug/18 ] |
|
allowDiskUse is false by default If the user doesn't set it they get: "errmsg" : "Exceeded memory limit for $group, but didn't allow external sort. Pass allowDiskUse:true to opt in.", So, if they know their dbpath has space available, I don't see why they should not be allowed to spill to disk during sort and group. |
| Comment by Ian Whalen (Inactive) [ 10/Aug/18 ] |
|
asya to first research whether the default for allowDiskUse is true or false and whether it recently changed, then bring back to triage for the Storage team. |