summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Cahill <michael.cahill@wiredtiger.com>2015-02-03 15:37:16 +1100
committerMichael Cahill <michael.cahill@wiredtiger.com>2015-02-03 15:37:16 +1100
commite1d60b25378330feef0123f11e82f095b3236d4b (patch)
tree235cca9692613d9cbb78f6bd5c5b0730a4e561f0
parent6b2ed52a5cd0ce7a0e176d97bbf2a4633a5dd4ef (diff)
downloadmongo-e1d60b25378330feef0123f11e82f095b3236d4b.tar.gz
Fix the forced eviction statistic logic again: don't look at the memory footprint after the page is evicted.
-rw-r--r--src/include/btree.i5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/include/btree.i b/src/include/btree.i
index c014a36f0f2..b41c083a706 100644
--- a/src/include/btree.i
+++ b/src/include/btree.i
@@ -903,10 +903,11 @@ __wt_page_release_evict(WT_SESSION_IMPL *session, WT_REF *ref)
WT_BTREE *btree;
WT_DECL_RET;
WT_PAGE *page;
- int locked;
+ int locked, too_big;
btree = S2BT(session);
page = ref->page;
+ too_big = (page->memory_footprint > btree->maxmempage) ? 1 : 0;
/*
* Take some care with order of operations: if we release the hazard
@@ -922,7 +923,7 @@ __wt_page_release_evict(WT_SESSION_IMPL *session, WT_REF *ref)
(void)WT_ATOMIC_ADD4(btree->evict_busy, 1);
if ((ret = __wt_evict_page(session, ref)) == 0) {
- if (page->memory_footprint > btree->maxmempage)
+ if (too_big)
WT_STAT_FAST_CONN_INCR(session, cache_eviction_force);
else
/*