[FEATURE REQ][BLOB STORAGE] Multi-part block blob upload using input stream
See original GitHub issueIs your feature request related to a problem? Please describe.
Azure storage has a limit of 256MB for blob upload using a single PUT request. For larger files, it requires doing a multi-part upload. The storage SDK automatically does this multi-part upload for large files when using the uploadFromFile
API but not when using uploadWithResponse
which accepts an InputStream.
Describe the solution you’d like
Use multi-part upload for large files when uploading blobs using an InputStream. I haven’t yet checked if EncryptedBlobClient
uses multi-upload for this API. If it doesn’t, please add support for that client too.
Describe alternatives you’ve considered It’s not a viable option for us to save the content to a local disk file and perform the upload. So no other valid alternatives.
Additional context NA
Information Checklist Kindly make sure that you have added all the following information above and checkoff the required fields otherwise we will treat the issuer as an incomplete report
- Description Added
- Expected solution specified
Issue Analytics
- State:
- Created 3 years ago
- Comments:11 (6 by maintainers)
@SukruthKS Can you please confirm whether all components of this issue have been addressed and if so close it?
For this operation, you should use BlobClient. The reason being BlockBlobClient is supposed to map directly to the rest API, so we won’t put any composite operations on that client. BlobClient is where higher level things like uploading a large stream will live.
@gapra-msft Can you please take a look at what’s going on with EncryptedBlobClient?