Details
-
Bug
-
Status: Open
-
Minor
-
Resolution: Unresolved
-
3.17.0, 3.18.0, 3.19.0, 3.20.3
-
None
-
None
-
Unknown
Description
When downloading blobs using the camel component a ConditionNotMet exception is thrown. The condition that is not met is the if-match condition that contains the etag value of the blob. When endpoint polls the file, it attempts to download it in chunks. During the download, if the file is touched, the etag changes and the download fails, after that everything goes to hell. This does not happens on local, I think that downloading the file is much, much faster and this concurrency issue does not occur, but as soon as you switch to a real azure environment the issue will occur every time. To reproduce the error follow the steps:
- Start application in debug mode
- Add a breakpoint on StorageInputStream at line 317
- Skip first chunk download
- Go to azure blob and touch the file (add new metadata)
- Skip second chunk download
- Exception is thrown
Last version that works without this issue is 3.16.0