From fdb504d9cd4e738971c82dee776214d3eb1292e6 Mon Sep 17 00:00:00 2001 From: Andrea Cavalli Date: Tue, 25 Jul 2023 17:29:36 +0200 Subject: [PATCH] Enable manual flush --- .../dbengine/database/disk/LLLocalKeyValueDatabase.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/main/java/it/cavallium/dbengine/database/disk/LLLocalKeyValueDatabase.java b/src/main/java/it/cavallium/dbengine/database/disk/LLLocalKeyValueDatabase.java index e48e1e8..fed6755 100644 --- a/src/main/java/it/cavallium/dbengine/database/disk/LLLocalKeyValueDatabase.java +++ b/src/main/java/it/cavallium/dbengine/database/disk/LLLocalKeyValueDatabase.java @@ -904,6 +904,10 @@ public class LLLocalKeyValueDatabase extends Backuppable implements LLKeyValueDa options.setSkipStatsUpdateOnDbOpen(true); options.setCreateMissingColumnFamilies(true); options.setInfoLogLevel(InfoLogLevel.WARN_LEVEL); + // todo: automatically flush every x seconds? + + options.setManualWalFlush(true); + options.setAvoidFlushDuringShutdown(false); // Flush all WALs during shutdown options.setAvoidFlushDuringRecovery(true); // Flush all WALs during startup options.setWalRecoveryMode(databaseOptions.absoluteConsistency() @@ -987,9 +991,9 @@ public class LLLocalKeyValueDatabase extends Backuppable implements LLKeyValueDa .setBytesPerSync(64 * SizeUnit.MB) .setWalBytesPerSync(64 * SizeUnit.MB) - .setWalTtlSeconds(60) // Auto + .setWalTtlSeconds(80) // Auto .setWalSizeLimitMB(0) // Auto - .setMaxTotalWalSize(10 * SizeUnit.GB) + .setMaxTotalWalSize(0) // AUto ; blockCache = CACHE_FACTORY.newCache(writeBufferManagerSize + databaseOptions.blockCache().orElse( 512 * SizeUnit.MB)); refs.track(blockCache);