From 5b95a190e8d7059039ce61e808d494dcf89ebb3b Mon Sep 17 00:00:00 2001 From: Alex Morcos Date: Fri, 31 Mar 2017 10:17:13 -0400 Subject: Make pcoinsTip memory calculations consistent Since we are more accurately measuring pcoinsTip peak usage at twice the current in dynamic usage, it makes sense to double the default (this will lead to the same effective usage and peak usage as previously). We should also double the buffer used to avoid flushing if above 90% but still sufficient space remaining. --- src/txdb.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/txdb.h') diff --git a/src/txdb.h b/src/txdb.h index 7f5cf2b583..963f1006ea 100644 --- a/src/txdb.h +++ b/src/txdb.h @@ -21,8 +21,12 @@ class CBlockIndex; class CCoinsViewDBCursor; class uint256; +//! Compensate for extra memory peak (x1.5-x1.9) at flush time. +static constexpr int DB_PEAK_USAGE_FACTOR = 2; +//! No need to flush if at least this much space still available. +static constexpr int MAX_BLOCK_COINSDB_USAGE = 100 * DB_PEAK_USAGE_FACTOR; //! -dbcache default (MiB) -static const int64_t nDefaultDbCache = 300; +static const int64_t nDefaultDbCache = 600; //! max. -dbcache (MiB) static const int64_t nMaxDbCache = sizeof(void*) > 4 ? 16384 : 1024; //! min. -dbcache (MiB) -- cgit v1.2.3