Open danielkirch opened 5 years ago
mix deps |grep ex_aws
mix deps | grep hackney
Sometimes, if you do
ExAws.S3.download_file(bucket, filename, tmp_file) |> ExAws.request!
no error is raised even though the file has not been downloaded completely.
It should raise an ExAws.Error.
We noticed this issue because we save our files with their hash as the filename and we check these hashes after downloading the file.
I think this is related to the :delayed_write option used in download.ex:66, see also https://hexdocs.pm/elixir/File.html#close/1 and http://erlang.org/doc/man/file.html#open-2 . It should be possible to fix this by checking that File.close actually returns :ok in download.ex:84.
+1 to this issue. Sometimes request just returns {:error, :enoent} with no reason
{:error, :enoent}
Environment
mix deps |grep ex_aws
ex_aws 2.1.0 ex_aws_s3 2.0.1mix deps | grep hackney
hackney 1.15.1Current behavior
Sometimes, if you do
no error is raised even though the file has not been downloaded completely.
Expected behavior
It should raise an ExAws.Error.
We noticed this issue because we save our files with their hash as the filename and we check these hashes after downloading the file.
I think this is related to the :delayed_write option used in download.ex:66, see also https://hexdocs.pm/elixir/File.html#close/1 and http://erlang.org/doc/man/file.html#open-2 . It should be possible to fix this by checking that File.close actually returns :ok in download.ex:84.