-
Type: Task
-
Resolution: Works as Designed
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: Replication, Storage
-
None
-
Storage Execution
-
0
Currently, every time we update our last applied op time, we make a call to the StorageInterface::setStableTimestamp method after we compute the stable timestamp, which in turn calls into wiredTiger to inform it of the new value. This may be somewhat costly, as the storage engine may need to acquire an internal mutex every time it updates this value, so we would like to avoid these calls when possible.
One simple fix would be to keep a cached value of the stable timestamp in the storage engine glue code, and simply see if the new stable timestamp value differs from the current value. If it is the same, there is no need to make a call to the storage engine.
- is related to
-
SERVER-29891 Roll Back to Checkpoint: Call setStableTimestamp() when commit point or last applied changes
- Closed
- related to
-
SERVER-30843 Use std::set::upper_bound when calculating the stable timestamp
- Closed