feat(storage): support copying CSEK-encrypted files to non-CSEK destinations#8771
feat(storage): support copying CSEK-encrypted files to non-CSEK destinations#8771thiyaguk09 wants to merge 5 commits into
Conversation
…SEK and fix copy behavior for non-encrypted destinations
…r conflicts during file copy operations
There was a problem hiding this comment.
Code Review
This pull request introduces support for setting a File's encryption key to null, enabling the copying of a Customer-Supplied Encryption Key (CSEK) encrypted file to a standard non-CSEK destination. Feedback on the changes highlights a critical async bug and race condition in the copy method, where this.getRequestInterceptors is temporarily overridden synchronously around an asynchronous request. Because the request pipeline runs asynchronously, the synchronous restoration happens too early, and concurrent operations on the same File instance will interfere with each other. The reviewer recommends isolating custom interceptors using request-scoped configuration instead of modifying the shared instance.
…t instead of file request
Thank you for opening a Pull Request! Before submitting your PR, there are a few things you can do to make sure it goes smoothly:
Fixes #7351