sqlitedbservice,indexer: Add runWalCheckpoint() and call it after indexing

Tá an tiomantas seo le fáil i:
Albert S. 2024-05-23 18:16:41 +02:00
tuismitheoir 048b90ad85
tiomantas 99dce53a6d
D'athraigh 2 comhad le 7 breiseanna agus 0 scriosta

Féach ar an gComhad

@ -163,6 +163,7 @@ void Indexer::processFinishedWorker()
--this->runningWorkers; --this->runningWorkers;
if(!isRunning()) if(!isRunning())
{ {
this->db->runWalCheckpoint();
emit finished(); emit finished();
} }
} }

Féach ar an gComhad

@ -276,6 +276,12 @@ bool SqliteDbService::insertOutline(QSqlDatabase &db, int fileid, const QVector<
return true; return true;
} }
bool SqliteDbService::runWalCheckpoint()
{
auto query = QSqlQuery(dbFactory->forCurrentThread());
return query.exec("PRAGMA wal_checkpoint(TRUNCATE);");
}
QSqlQuery SqliteDbService::exec(QString querystr, std::initializer_list<QVariant> args) QSqlQuery SqliteDbService::exec(QString querystr, std::initializer_list<QVariant> args)
{ {
auto query = QSqlQuery(dbFactory->forCurrentThread()); auto query = QSqlQuery(dbFactory->forCurrentThread());