Added a way to force rescan artist infos
This commit is contained in:
@@ -92,6 +92,7 @@ namespace lms::scanner
|
||||
|
||||
settings.emplace();
|
||||
settings->audioScanVersion = scanSettings->getAudioScanVersion();
|
||||
settings->artistInfoScanVersion = scanSettings->getArtistInfoScanVersion();
|
||||
settings->startTime = scanSettings->getUpdateStartTime();
|
||||
settings->updatePeriod = scanSettings->getUpdatePeriod();
|
||||
|
||||
@@ -420,7 +421,8 @@ namespace lms::scanner
|
||||
return;
|
||||
|
||||
LMS_LOG(DBUPDATER, DEBUG, "Scanner settings updated");
|
||||
LMS_LOG(DBUPDATER, DEBUG, "Using audio scan settings version " << newSettings->audioScanVersion);
|
||||
LMS_LOG(DBUPDATER, DEBUG, "Using audio scan version " << newSettings->audioScanVersion);
|
||||
LMS_LOG(DBUPDATER, DEBUG, "Using artist info scan version " << newSettings->artistInfoScanVersion);
|
||||
|
||||
_settings = std::move(*newSettings);
|
||||
if (!_lastScanSettings)
|
||||
|
||||
@@ -36,6 +36,7 @@ namespace lms::scanner
|
||||
struct ScannerSettings
|
||||
{
|
||||
std::size_t audioScanVersion{};
|
||||
std::size_t artistInfoScanVersion{};
|
||||
Wt::WTime startTime;
|
||||
db::ScanSettings::UpdatePeriod updatePeriod{ db::ScanSettings::UpdatePeriod::Never };
|
||||
bool skipDuplicateTrackMBID{};
|
||||
|
||||
@@ -127,6 +127,7 @@ namespace lms::scanner
|
||||
artistInfo.modify()->setAbsoluteFilePath(_file);
|
||||
}
|
||||
|
||||
artistInfo.modify()->setScanVersion(_settings.artistInfoScanVersion);
|
||||
artistInfo.modify()->setName(_parsedArtistInfo->name);
|
||||
artistInfo.modify()->setSortName(_parsedArtistInfo->sortName);
|
||||
artistInfo.modify()->setLastWriteTime(fileInfo->lastWriteTime);
|
||||
@@ -164,7 +165,7 @@ namespace lms::scanner
|
||||
|
||||
core::LiteralString ArtistInfoFileScanner::getName() const
|
||||
{
|
||||
return "Artist info scanner ";
|
||||
return "Artist info scanner";
|
||||
}
|
||||
|
||||
std::span<const std::filesystem::path> ArtistInfoFileScanner::getSupportedExtensions() const
|
||||
@@ -193,7 +194,9 @@ namespace lms::scanner
|
||||
db::Session& dbSession{ _db.getTLSSession() };
|
||||
auto transaction{ dbSession.createReadTransaction() };
|
||||
db::ArtistInfo::pointer artistInfo{ db::ArtistInfo::find(dbSession, file.file) };
|
||||
if (artistInfo && artistInfo->getLastWriteTime() == lastWriteTime)
|
||||
if (artistInfo
|
||||
&& artistInfo->getLastWriteTime() == lastWriteTime
|
||||
&& artistInfo->getScanVersion() == _settings.artistInfoScanVersion)
|
||||
{
|
||||
context.stats.skips++;
|
||||
return false;
|
||||
|
||||
Reference in New Issue
Block a user