-
Type:
Improvement
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
Storage Engines, Storage Engines - Server Integration
-
PastaLaVista - 2025-03-18, pro-duck-tive - 2025-04-01, meow meow meow - 2025-04-15, RSS Sydney - 2025-04-29, Bananini - 2025-05-13, GoodbyeRSSs - 2025-06-10, SESI - 2025-06-24, SESI - 2025-07-08
-
None
-
3
-
TBD
-
None
-
None
-
None
-
None
-
None
-
None
The heuristic provided by WT engineers in WT-14075, and implemented in SERVER-100367 and SERVER-101817 is not suited to the task of avoiding cache-pressure situations (the heuristic is designed to detect cache-stuck situations, which is too late)
We need to modify the pressure heuristic in order to detect cache pressure, not stalls
This involves some minor changes:
- Reconsider "number of transactions committed" and "proportion of time spent in eviction". These both only take effect after cache pressure has been reached and we are entering a stall. These factors might be used as weights , see below.
- Modify the returned value to some kind of numeric value to indicate closeness to cache pressure. i.e.:
- -1 - 0 => no pressure
- 0 - 1 => some pressure before stall
- 1 - 2 => stall has been reached
- Modify the oldest-killing behaviour to react to the numeric return. The intention is to start by taking minimal action and incrementally increase the aborts as we approach and exceed cache limits.
- blocks
-
SERVER-102762 Determine suitable defaults for cache-pressure-eviction parameters
-
- Backlog
-
- is related to
-
WT-14075 Investigate possible new metrics that indicate the necessity to stop long running transactions.
-
- Closed
-
-
SERVER-100367 Aborting multi-document transactions as soon as possible when under cache pressure
-
- Closed
-
-
SERVER-101817 Update underCachePressure to query updated WT stats
-
- Closed
-
- related to
-
SERVER-106687 Create a representative workload to test goodput of cache pressure thread
-
- In Progress
-