Major - P3
Capped collection handling in WiredTiger is inefficient because of way that WiredTiger tracks and expires documents in the capped collection.
WiredTiger uses a specific internal cursor to find the "beginning of the capped collection". Combined with asynchronous deletion of expired capped collection records, this is inefficient for collections with high numbers of inserts because requests have to process large number of expired documents.
Capped collection performance degrades over time. Note that the oplog is a capped collection, so users running replica sets with WiredTiger may be impacted by this issue even if no other capped collections are used.
WiredTiger now caches the current "first" unexpired document in a capped collection. This change improves performance for all capped collections, but is particular important for the performance of replication because the oplog depends on capped collection performance.
MongoDB 3.0.0 through 3.0.4.
The fix is included in the 3.0.5 production release.
Backport part of
SERVER-18875 to MongoDB 3.0 to address the most serious performance issues with long-running workloads using capped collections.
- is related to
SERVER-18875 Oplog performance on WT degrades over time after accumulation of deleted items