Try when running synchronously
This commit is contained in:
2024-05-19 22:30:33 -07:00
parent c838848129
commit cd88e340a3
4 changed files with 15 additions and 9 deletions

View File

@ -140,7 +140,7 @@ public partial class Rename : IRename, IDisposable
}
}
private static List<RecordA> GetRecordACollection(IRename rename, RenameConfiguration renameConfiguration, IEnumerable<string> files, A_Metadata metadata)
private static List<RecordA> GetRecordACollection(ILogger<Program>? logger, IRename rename, RenameConfiguration renameConfiguration, IEnumerable<string> files, A_Metadata metadata)
{
List<RecordA> results = [];
int index = -1;
@ -192,7 +192,13 @@ public partial class Rename : IRename, IDisposable
continue;
sidecarFiles.Add(keyValuePair.Value[i]);
}
(fileInfo, exifDirectory) = metadata.GetMetadataCollection(renameConfiguration.MetadataConfiguration, filePath, deterministicHashCode);
try
{ (fileInfo, exifDirectory) = metadata.GetMetadataCollection(renameConfiguration.MetadataConfiguration, filePath, deterministicHashCode); }
catch (Exception)
{
logger?.LogWarning("<{filePath}>", filePath.FullName);
continue;
}
results.Add(new(exifDirectory, fileInfo, filePath, new(sidecarFiles)));
if (ffmpegFiles is not null)
{
@ -223,7 +229,7 @@ public partial class Rename : IRename, IDisposable
return new(results);
}
private ReadOnlyCollection<RecordB> GetRecordBCollection(IRename rename, AppSettings appSettings, RenameConfiguration renameConfiguration, DirectoryInfo directoryInfo)
private ReadOnlyCollection<RecordB> GetRecordBCollection(ILogger<Program>? logger, IRename rename, AppSettings appSettings, RenameConfiguration renameConfiguration, DirectoryInfo directoryInfo)
{
ReadOnlyCollection<RecordB> results;
List<RecordA> recordACollection = [];
@ -233,7 +239,7 @@ public partial class Rename : IRename, IDisposable
int filesCount = appSettingsMaxDegreeOfParallelism == 1 ? files.Count() : 123000;
_ProgressBar = new(filesCount, "EnumerateFiles load", new ProgressBarOptions() { ProgressCharacter = '─', ProgressBarOnBottom = true, DisableBottomPercentage = true });
if (appSettingsMaxDegreeOfParallelism == 1)
recordACollection.AddRange(GetRecordACollection(rename, renameConfiguration, files, metadata));
recordACollection.AddRange(GetRecordACollection(logger, rename, renameConfiguration, files, metadata));
else
{
List<string> distinct = [];
@ -455,7 +461,7 @@ public partial class Rename : IRename, IDisposable
throw new Exception($"Invalid {nameof(renameConfiguration.RelativePropertyCollectionFile)}");
DirectoryInfo directoryInfo = new(Path.GetFullPath(renameConfiguration.MetadataConfiguration.ResultConfiguration.RootDirectory));
logger?.LogInformation("{Ticks} {RootDirectory}", ticks, directoryInfo.FullName);
ReadOnlyCollection<RecordB> recordBCollection = GetRecordBCollection(rename, appSettings, renameConfiguration, directoryInfo);
ReadOnlyCollection<RecordB> recordBCollection = GetRecordBCollection(logger, rename, appSettings, renameConfiguration, directoryInfo);
SaveIdentifiersToDisk(ticks, renameConfiguration, aMetadataCollectionDirectory, recordBCollection);
if (!renameConfiguration.OnlySaveIdentifiersToDisk)
{