Skip to content

Commit

Permalink
Retry file copying
Browse files Browse the repository at this point in the history
  • Loading branch information
leotsarev committed May 22, 2024
1 parent 5c105c5 commit ff78e14
Showing 1 changed file with 13 additions and 9 deletions.
22 changes: 13 additions & 9 deletions src/LibraryManager.Contracts/FileHelpers.cs
Original file line number Diff line number Diff line change
Expand Up @@ -141,19 +141,23 @@ public static Task<Stream> ReadFileAsStreamAsync(string fileName, CancellationTo
/// <returns>A boolean indicating whether the file was copied successfully</returns>
public static async Task<bool> CopyFileAsync(string sourceFile, string destinationFile, ILogger logger, CancellationToken cancellationToken)
{
try
//Sometimes it flaky. Let's retry
for (int i=0; i<2;i++)
{
using FileStream sourceStream = File.Open(sourceFile, FileMode.Open, FileAccess.Read);
try
{
using FileStream sourceStream = File.Open(sourceFile, FileMode.Open, FileAccess.Read);

await WriteToFileAsync(destinationFile, sourceStream, cancellationToken);
await WriteToFileAsync(destinationFile, sourceStream, cancellationToken);

return true;
}
catch (Exception exception)
{
logger.Log($"Error during copying file {exception}", LogLevel.Error);
return false;
return true;
}
catch (Exception exception)
{
logger.Log($"Error during copying file {exception}", LogLevel.Error);
}
}
return false;
}

/// <summary>
Expand Down

0 comments on commit ff78e14

Please sign in to comment.