add try catch around each scan

This commit is contained in:
Stanley Dimant
2022-09-26 12:54:54 +02:00
parent ff2b679a8c
commit 7f97b20883
2 changed files with 22 additions and 6 deletions

View File

@@ -45,7 +45,7 @@ public class FileDbManager
return GetValidatedFileCache(matchingEntries.First());
}
public FileCache? ValidateFileCache(FileCacheEntity fileCacheEntity)
public FileCache? ValidateFileCacheEntity(FileCacheEntity fileCacheEntity)
{
return GetValidatedFileCache(fileCacheEntity);
}

View File

@@ -178,10 +178,18 @@ public class PeriodicFileScanner : IDisposable
{
Task[] tasks = chunk.Select(c => Task.Run(() =>
{
var file = _fileDbManager.ValidateFileCache(c);
if (file != null)
try
{
scannedFiles[file.Filepath] = true;
var file = _fileDbManager.ValidateFileCacheEntity(c);
if (file != null)
{
scannedFiles[file.Filepath] = true;
}
}
catch (Exception ex)
{
Logger.Warn("Failed validating " + c.Filepath);
Logger.Warn(ex.Message);
}
Interlocked.Increment(ref currentFileProgress);
@@ -203,8 +211,16 @@ public class PeriodicFileScanner : IDisposable
{
Task[] tasks = chunk.Select(c => Task.Run(() =>
{
var entry = _fileDbManager.CreateFileEntry(c.Key);
if (entry == null) _ = _fileDbManager.CreateCacheEntry(c.Key);
try
{
var entry = _fileDbManager.CreateFileEntry(c.Key);
if (entry == null) _ = _fileDbManager.CreateCacheEntry(c.Key);
}
catch (Exception ex)
{
Logger.Warn("Failed adding " + c.Key);
Logger.Warn(ex.Message);
}
Interlocked.Increment(ref currentFileProgress);
})).ToArray();