in Core/src/Impl/Commands/ValidateCommand.cs [34:50]
public async Task<int> ExecuteAsync()
{
Volatile.Write(ref mySubOpsCount, 0);
var validator = new StorageManager(myLogger, myStorage);
var storageFormat = await validator.ValidateStorageMarkersAsync();
var tagItems = await validator.LoadTagItemsAsync(myDegreeOfParallelism);
validator.DumpProducts(tagItems);
validator.DumpProperties(tagItems);
var (files, totalSize) = await validator.GatherDataFilesAsync();
Volatile.Write(ref mySubOpsCount, files.Count);
var (statistics, _) = await validator.ValidateAndFixAsync(myDegreeOfParallelism, tagItems, files, storageFormat, myFix ? StorageManager.ValidateMode.Fix : StorageManager.ValidateMode.Validate, myVerifyAcl);
if (statistics.Fixes > 0)
await myStorage.InvalidateExternalServicesAsync();
myLogger.Info($"[{DateTime.Now:s}] Done (size: {totalSize.ToKibibyte()}, warnings: {statistics.Warnings}, errors: {statistics.Errors}, fixes: {statistics.Fixes})");
return statistics.HasProblems ? 1 : 0;
}