Removed offending index
This commit is contained in:
@@ -34,7 +34,7 @@ namespace lms::db
|
||||
{
|
||||
namespace
|
||||
{
|
||||
static constexpr Version LMS_DATABASE_VERSION{ 97 };
|
||||
static constexpr Version LMS_DATABASE_VERSION{ 98 };
|
||||
}
|
||||
|
||||
VersionInfo::VersionInfo()
|
||||
@@ -1417,6 +1417,12 @@ WHERE art.image_id IS NULL)");
|
||||
dropIndexes(session);
|
||||
}
|
||||
|
||||
void migrateFromV97(Session& session)
|
||||
{
|
||||
// Removed not that useful indexes
|
||||
dropIndexes(session);
|
||||
}
|
||||
|
||||
bool doDbMigration(Session& session)
|
||||
{
|
||||
constexpr std::string_view outdatedMsg{ "Outdated database, please rebuild it (delete the .db file and restart)" };
|
||||
@@ -1490,6 +1496,7 @@ WHERE art.image_id IS NULL)");
|
||||
{ 94, migrateFromV94 },
|
||||
{ 95, migrateFromV95 },
|
||||
{ 96, migrateFromV96 },
|
||||
{ 97, migrateFromV97 },
|
||||
};
|
||||
|
||||
bool migrationPerformed{};
|
||||
|
||||
@@ -289,10 +289,9 @@ namespace lms::db
|
||||
utils::executeCommand(_session, "CREATE INDEX IF NOT EXISTS track_artist_link_artist_idx ON track_artist_link(artist_id)");
|
||||
utils::executeCommand(_session, "CREATE INDEX IF NOT EXISTS track_artist_link_artist_mbid_matched_artist_idx ON track_artist_link(artist_mbid_matched, artist_id)");
|
||||
utils::executeCommand(_session, "CREATE INDEX IF NOT EXISTS track_artist_link_artist_track_idx ON track_artist_link(artist_id, track_id)");
|
||||
utils::executeCommand(_session, "CREATE INDEX IF NOT EXISTS track_artist_link_artist_type_idx ON track_artist_link(artist_id, type)");
|
||||
utils::executeCommand(_session, "CREATE INDEX IF NOT EXISTS track_artist_link_artist_type_track_idx ON track_artist_link(artist_id, type, track_id)");
|
||||
utils::executeCommand(_session, "CREATE INDEX IF NOT EXISTS track_artist_link_track_artist_idx ON track_artist_link(track_id, artist_id)");
|
||||
utils::executeCommand(_session, "CREATE INDEX IF NOT EXISTS track_artist_link_track_type_idx ON track_artist_link(track_id, type)");
|
||||
utils::executeCommand(_session, "CREATE INDEX IF NOT EXISTS track_artist_link_type_track_artist_idx ON track_artist_link(type, track_id, artist_id)");
|
||||
|
||||
utils::executeCommand(_session, "CREATE INDEX IF NOT EXISTS track_features_track_idx ON track_features(track_id)");
|
||||
|
||||
@@ -384,6 +383,8 @@ namespace lms::db
|
||||
|
||||
bool Session::areAllTablesEmpty()
|
||||
{
|
||||
checkReadTransaction();
|
||||
|
||||
const std::vector<std::string> entryList{ utils::fetchQueryResults(_session.query<std::string>("SELECT name FROM sqlite_master WHERE type='table' AND name NOT LIKE 'sqlite_%'")) };
|
||||
|
||||
return std::all_of(entryList.cbegin(), entryList.cend(), [this](const std::string& entry) {
|
||||
|
||||
@@ -47,6 +47,8 @@ namespace lms::db
|
||||
|
||||
void execute(std::string_view statement);
|
||||
|
||||
void optimize(); // need to acquire a write transaction
|
||||
|
||||
// All these methods will acquire transactions
|
||||
void fullAnalyze(); // helper for retrieveEntriesToAnalyze + analyzeEntry
|
||||
void retrieveEntriesToAnalyze(std::vector<std::string>& entryList);
|
||||
|
||||
Reference in New Issue
Block a user