Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[azblob] Un-reported breaking change between 1.0 and 1.2.1.. #22297

Closed
sblackstone opened this issue Jan 25, 2024 · 2 comments · Fixed by #22357
Closed

[azblob] Un-reported breaking change between 1.0 and 1.2.1.. #22297

sblackstone opened this issue Jan 25, 2024 · 2 comments · Fixed by #22357
Assignees
Labels
AzBlob customer-reported Issues that are reported by GitHub users external to the Azure organization. needs-team-attention This issue needs attention from Azure service team or SDK team question The issue doesn't require a change to the product in order to be resolved. Most issues start as that Storage Storage Service (Queues, Blobs, Files)

Comments

@sblackstone
Copy link

sblackstone commented Jan 25, 2024

Bug Report

I have a wrapper for azblobs in that does (basically) this.... (unimportant details omitted)

	file, err := os.CreateTemp("", "")
	_, err = client.DownloadFile(context.Background(), blobConfig.ContainerName, blobName, file, nil)
	return file

After upgrading from 1.0.0 to 1.2.1 of azblob package, my code silently broke in production because the file descriptor after DownloadFile now pointed to the end of the file rather than the beginning. This was solved with Seek(0,0) before returning..

There haven't been any mentions of this (as far as I can tell) in the CHANGELOG (there have been no breaking changes since 1.0.0)

I've been unable to track down the exact change that caused this but I noticed that in ef349c3 the author of this patch had to update their test to resolve the same problem.

@github-actions github-actions bot added Client This issue points to a problem in the data-plane of the library. customer-reported Issues that are reported by GitHub users external to the Azure organization. needs-team-triage This issue needs the team to triage. question The issue doesn't require a change to the product in order to be resolved. Most issues start as that Storage Storage Service (Queues, Blobs, Files) labels Jan 25, 2024
@jhendrixMSFT jhendrixMSFT removed Client This issue points to a problem in the data-plane of the library. needs-team-triage This issue needs the team to triage. labels Jan 25, 2024
@github-actions github-actions bot added the needs-team-attention This issue needs attention from Azure service team or SDK team label Jan 25, 2024
@vibhansa-msft
Copy link
Member

Interesting observation. Let us investigate on this. As we download the data and write to file handle provided my assumption is it may not always point to begining of the file, if there was an extra code to seek the offset back to 0 we need to check that part.

@vibhansa-msft vibhansa-msft added this to the Storage-Feb-24 milestone Jan 30, 2024
@vibhansa-msft
Copy link
Member

We have identified the problem and will be fixed in our next release. That being said, this does not classify as a breaking change. From SDK standpoint breaking change is something where client application stops compiling due to a SDK change something like changing the API signature. As a solution we will keep the file pointer at a location where it was before the operation began,

@souravgupta-msft souravgupta-msft linked a pull request Feb 8, 2024 that will close this issue
5 tasks
@github-actions github-actions bot locked and limited conversation to collaborators May 8, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
AzBlob customer-reported Issues that are reported by GitHub users external to the Azure organization. needs-team-attention This issue needs attention from Azure service team or SDK team question The issue doesn't require a change to the product in order to be resolved. Most issues start as that Storage Storage Service (Queues, Blobs, Files)
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants