question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

[FEATURE REQ] [Blob Storage] Return properties of blob uploaded using EncryptedBlobClient

See original GitHub issue

Is your feature request related to a problem? Please describe. I use synchronous version of the blob clients in the storage SDK (v12.6.0). When a blob is uploaded using BlockBlobClient, it returns a BlockBlobItem that contains the properties of the uploaded blob like content MD5, ETag etc. But when EncryptedBlobClient is used instead for client-side encrypting the blob before uploading, it does not return these properties. So I have to make an additional call to download these properties.

Describe the solution you’d like Expose the properties returned by the storage service with the PUT request so the application doesn’t have to make an additional call.

Describe alternatives you’ve considered I couldn’t find an alternative that avoids additional calls.

Additional context Signature of upload API exposed by BlockBlobClient:

public Response<BlockBlobItem> uploadWithResponse(InputStream data, long length, BlobHttpHeaders headers,
        Map<String, String> metadata, AccessTier tier, byte[] contentMd5, BlobRequestConditions requestConditions,
        Duration timeout, Context context);

Signature of upload API exposed by EncryptedBlobClient:

public void uploadWithResponse(InputStream data, long length, ParallelTransferOptions parallelTransferOptions,
        BlobHttpHeaders headers, Map<String, String> metadata, AccessTier tier, BlobRequestConditions requestConditions,
        Duration timeout, Context context);

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:closed
  • Created 3 years ago
  • Comments:5 (3 by maintainers)

github_iconTop GitHub Comments

1reaction
SukruthKScommented, May 20, 2020

Hey @rickle-msft, this has now become a blocker. I just discovered some application code paths which have write-only credentials to storage so I cannot make that additional call to download blob properties.

Also, as per our discussion in #11231, I’ll be using BlobClient instead of BlockBlobClient for uploads so this support needs to be added for BlobClient along with EncryptedBlobClient.

1reaction
rickle-msftcommented, May 4, 2020

Thank you for that information. Given that it’s early in the month, I think there’s a good chance we can get this in for the June release (May just happened), though that may change based on some work for upcoming service features. I’ll keep you posted, and please let us know if this in any way approaches becoming a blocker for you.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Manage properties and metadata for a blob with .NET
Learn how to set and retrieve system properties and store custom metadata on blobs in your Azure Storage account using the .
Read more >
how to get blob-URL after file upload in azure - Stack Overflow
Net storage client library by creating an instance of CloudBlockBlob , you can get the URL of the blob by reading Uri property...
Read more >
Azure Blob Storage | Tray.io Documentation
Azure Blob Storage is a feature of Microsoft Azure. It allows users to store large amounts of unstructured data on Microsoft's data storage...
Read more >
Enable Soft Delete for Azure Blob Storage - Trend Micro
With Soft Delete feature enabled, when blob objects are deleted, ... If the storage blob service-properties delete-policy show command output returns false, ...
Read more >
Microsoft Azure Blob storage - IBM® App Connect Enterprise
Return to editing the Microsoft Azure Blob Storage Request node in the IBM App Connect Enterprise Toolkit. The connector properties that were set...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found