azure-sdk-for-go
azure-sdk-for-go copied to clipboard
request for (*blockblob.Client).StageBlock streamable option like (*azblob.Client).UploadStream
Feature Request
Currently (*blockblob.Client).StageBlock() requires passing in body of type io.ReadSeekCloser. This is requiring caching the full stage block body in memory before submitting the upload.
Ideally I would like the equivalent of (*azblob.Client).UploadStream() that only needs an io.Reader and can be streamed to the upload without requiring a seekable reader.
The use case for this is to use the StageBlock for the multipart part upload in our s3 to azure gateway versitygw, specifically here: https://github.com/versity/versitygw/blob/bcd667c4d4213440243985a143199a198207dfd2/backend/azure/azure.go#L586C18-L586C28