spring-cloud-azure icon indicating copy to clipboard operation
spring-cloud-azure copied to clipboard

Metadata Vanishing[BUG]

Open Mojo1 opened this issue 8 months ago • 0 comments

Describe the bug

I also opened a issue with Azurite. Don't know what it is

https://github.com/Azure/Azurite/issues/2416

What problem was encountered? This is a really curious issue with metadata. As soon as I iterate over blob containers in code metadata vanish. I don't know if it's a problem with Azurite Emulator or if the java lib is buggy. I tracked it down just to this iteration. No other operations done

Steps to reproduce the issue? Install and run Azurite Install and open Microsoft Azure Storage explorer Open "Emulator & Attached" - Storage Accounts - Emulator - Blob containers Create a container right click properties add metadata use spring boot BlobServiceClient to iterate over paged response blobcontaineritem After that metadata is gone Could be any party involved losing it. Thought I try here for investigation

Exception or Stack Trace

To Reproduce

Code Snippet

public Map<String, ConfigType> getConfigTypes() { Map<String, ConfigType> configTypes = new HashMap<>(); PagedIterable<BlobContainerItem> blobContainerItemPages = blobServiceClient.listBlobContainers(); Iterator<PagedResponse<BlobContainerItem>> iterator = blobContainerItemPages.iterableByPage().iterator(); while (iterator.hasNext()) { PagedResponse<BlobContainerItem> blobContainerItems = iterator.next(); processBlobContainerItems(blobContainerItems, configTypes); } return configTypes; } private void processBlobContainerItems(PagedResponse<BlobContainerItem> blobContainerItems, Map<String, ConfigType> configTypes) { for (BlobContainerItem blobContainerItem : blobContainerItems.getValue()) { BlobContainerClient blobContainerClient = blobServiceClient .getBlobContainerClient(blobContainerItem.getName()); List<String> versions = getBlobVersions(blobContainerClient); String latestVersionString = getLatestVersionString(versions); String description = getDescription(blobContainerItem); String title = getTitle(blobContainerItem); ConfigType configType = createConfigType(title, latestVersionString, versions, description); configTypes.put(blobContainerItem.getName(), configType); } }

Expected behavior

Metadata should be fetched and not deleted Screenshots

Content (please complete the following information if possible):

Additional context

Information Checklist

  • [x] Bug Description Added
  • [x] Repro Steps Added
  • [x] Setup information Added

Mojo1 avatar Jun 24 '24 17:06 Mojo1