From e1713a329c1ed963db24ea71dd3b339c221e79e9 Mon Sep 17 00:00:00 2001 From: Chris Vest Date: Fri, 6 Nov 2015 13:16:41 +0100 Subject: [PATCH] Fix int overflow bug in reported page cache memory when dump_configuration=true This has no impact on how much memory will actually be used by the page cache at runtime. It's only about how much memory we _say_ we use for the page cache when `dump_configuration` is `true`. --- .../kernel/impl/pagecache/ConfiguringPageCacheFactory.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/community/kernel/src/main/java/org/neo4j/kernel/impl/pagecache/ConfiguringPageCacheFactory.java b/community/kernel/src/main/java/org/neo4j/kernel/impl/pagecache/ConfiguringPageCacheFactory.java index d87e895417d1d..91e2165464d06 100644 --- a/community/kernel/src/main/java/org/neo4j/kernel/impl/pagecache/ConfiguringPageCacheFactory.java +++ b/community/kernel/src/main/java/org/neo4j/kernel/impl/pagecache/ConfiguringPageCacheFactory.java @@ -85,7 +85,9 @@ public void dumpConfiguration( StringLogger messagesLog ) long totalPhysicalMemory = totalPhysicalMemory(); String totalPhysicalMemMb = totalPhysicalMemory == -1? "?" : "" + totalPhysicalMemory / 1024 / 1024; long maxVmUsageMb = Runtime.getRuntime().maxMemory() / 1024 / 1024; - long pageCacheMb = (calculateMaxPages( config ) * calculatePageSize( config )) / 1024 / 1024; + long maxPages = calculateMaxPages( config ); + long pageSize = calculatePageSize( config ); + long pageCacheMb = (maxPages * pageSize) / 1024 / 1024; String msg = "Physical mem: " + totalPhysicalMemMb + " MiB," + " Heap size: " + maxVmUsageMb + " MiB," + " Page cache size: " + pageCacheMb + " MiB.";