From 5e8e46e77f263977e90ce9ea60ed0b7c47a8efa6 Mon Sep 17 00:00:00 2001 From: emeric Date: Wed, 1 Apr 2020 13:50:29 +0200 Subject: [PATCH] Force optimizing the database in case of crash/forced exit during scan --- src/libs/database/impl/Session.cpp | 9 ++++++--- src/lms/main.cpp | 1 + 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/libs/database/impl/Session.cpp b/src/libs/database/impl/Session.cpp index 63586f17..041bfc41 100644 --- a/src/libs/database/impl/Session.cpp +++ b/src/libs/database/impl/Session.cpp @@ -318,9 +318,12 @@ Session::prepareTables() void Session::optimize() { - auto uniqueTransaction {createUniqueTransaction()}; - - _session.execute("ANALYZE"); + LMS_LOG(DB, DEBUG) << "Optimizing db..."; + { + auto uniqueTransaction {createUniqueTransaction()}; + _session.execute("ANALYZE"); + } + LMS_LOG(DB, DEBUG) << "Optimized db!"; } } // namespace Database diff --git a/src/lms/main.cpp b/src/lms/main.cpp index 18dcd7f2..39d7eb15 100644 --- a/src/lms/main.cpp +++ b/src/lms/main.cpp @@ -135,6 +135,7 @@ int main(int argc, char* argv[]) { Database::Session session {database}; session.prepareTables(); + session.optimize(); } UserInterface::LmsApplicationGroupContainer appGroups;