diff --git a/src/evict.cpp b/src/evict.cpp index 6a616f0f7..65232c878 100644 --- a/src/evict.cpp +++ b/src/evict.cpp @@ -459,6 +459,10 @@ int getMaxmemoryState(size_t *total, size_t *logical, size_t *tofree, float *lev /* Compute how much memory we need to free. */ mem_tofree = mem_used - maxmemory; + if (g_pserver->m_pstorageFactory) + { + mem_tofree += static_cast(maxmemory * 0.05); // if we have a storage provider be much more aggressive + } if (logical) *logical = mem_used; if (tofree) *tofree = mem_tofree;