diff options
author | Michael Cahill <michael.cahill@mongodb.com> | 2016-08-26 12:50:11 +1000 |
---|---|---|
committer | Alex Gorrod <alexander.gorrod@mongodb.com> | 2016-08-26 12:50:11 +1000 |
commit | a48b73bdd3da302262582a04830e981ca60ad1cb (patch) | |
tree | 09035bcdfaf9edeba769ffe6b4fc9270daa2bbca /dist | |
parent | 0cdefa89f437bab5aaf554a2fa211028b674bbd0 (diff) | |
download | mongo-a48b73bdd3da302262582a04830e981ca60ad1cb.tar.gz |
WT-2816 General improvements to WiredTiger eviction performance (#2949)
A set of changes to the eviction algorithm including:
* Fix a bug in how many items can be added to the urgent queue
* Have the eviction server sleep less so it recovers from disruptions faster.
* Only have application threads evict dirty pages if they are blocked on the dirty trigger.
* Swap eviction queues when one becomes empty.
* Have the eviction server populate the "other" queue whenever it notices that it isn't full.
Diffstat (limited to 'dist')
-rw-r--r-- | dist/stat_data.py | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/dist/stat_data.py b/dist/stat_data.py index 51cc487f04c..af410a341bd 100644 --- a/dist/stat_data.py +++ b/dist/stat_data.py @@ -201,12 +201,12 @@ connection_stats = [ CacheStat('cache_eviction_queue_empty', 'eviction server candidate queue empty when topping up'), CacheStat('cache_eviction_queue_not_empty', 'eviction server candidate queue not empty when topping up'), CacheStat('cache_eviction_server_evicting', 'eviction server evicting pages'), - CacheStat('cache_eviction_server_not_evicting', 'eviction server populating queue, but not evicting pages'), CacheStat('cache_eviction_server_slept', 'eviction server slept, because we did not make progress with eviction'), CacheStat('cache_eviction_server_toobig', 'eviction server skipped very large page'), CacheStat('cache_eviction_slow', 'eviction server unable to reach eviction goal'), CacheStat('cache_eviction_split_internal', 'internal pages split during eviction'), CacheStat('cache_eviction_split_leaf', 'leaf pages split during eviction'), + CacheStat('cache_eviction_state', 'eviction state', 'no_clear,no_scale'), CacheStat('cache_eviction_walk', 'pages walked for eviction'), CacheStat('cache_eviction_walks_active', 'files with active eviction walks', 'no_clear,no_scale,size'), CacheStat('cache_eviction_walks_started', 'files with new eviction walks started'), @@ -276,8 +276,8 @@ connection_stats = [ LogStat('log_slot_unbuffered', 'consolidated slot unbuffered writes'), LogStat('log_sync', 'log sync operations'), LogStat('log_sync_dir', 'log sync_dir operations'), - LogStat('log_sync_dir_duration', 'log sync_dir time duration (usecs)'), - LogStat('log_sync_duration', 'log sync time duration (usecs)'), + LogStat('log_sync_dir_duration', 'log sync_dir time duration (usecs)', 'no_clear,no_scale'), + LogStat('log_sync_duration', 'log sync time duration (usecs)', 'no_clear,no_scale'), LogStat('log_write_lsn', 'log server thread advances write LSN'), LogStat('log_write_lsn_skip', 'log server thread write LSN walk skipped'), LogStat('log_writes', 'log write operations'), |