From cd25eaf4bf82a40837a1e72d67857ddeaeb19538 Mon Sep 17 00:00:00 2001 From: ClemensFischer Date: Sat, 1 Mar 2025 13:55:02 +0100 Subject: [PATCH] Update SQLiteCache.cs --- Caches/SQLiteCache/SQLiteCache.cs | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/Caches/SQLiteCache/SQLiteCache.cs b/Caches/SQLiteCache/SQLiteCache.cs index 7284f208..f7da93f9 100644 --- a/Caches/SQLiteCache/SQLiteCache.cs +++ b/Caches/SQLiteCache/SQLiteCache.cs @@ -182,13 +182,21 @@ namespace MapControl.Caching public void DeleteExpiredItems() { - using (var command = DeleteExpiredItemCommand()) + long deleted; + + using (var command = DeleteExpiredItemsCommand()) { - var deleted = (long)command.ExecuteScalar(); - if (deleted > 0) + deleted = (long)command.ExecuteScalar(); + } + + if (deleted > 0) + { + using (var command = new SQLiteCommand("vacuum", connection)) { - Debug.WriteLine($"{nameof(SQLiteCache)}: Deleted {deleted} expired items"); + command.ExecuteNonQuery(); } + + Debug.WriteLine($"{nameof(SQLiteCache)}: Deleted {deleted} expired items"); } } @@ -219,7 +227,7 @@ namespace MapControl.Caching return command; } - private SQLiteCommand DeleteExpiredItemCommand() + private SQLiteCommand DeleteExpiredItemsCommand() { var command = new SQLiteCommand("delete from items where expiration <= @exp; select changes()", connection); command.Parameters.AddWithValue("@exp", DateTimeOffset.UtcNow.Ticks);