-
Notifications
You must be signed in to change notification settings - Fork 469
Fix broken support for requester-pays buckets #3256
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
Fix broken support for requester-pays buckets #3256
Conversation
ee64d6d to
74fc891
Compare
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #3256 +/- ##
==========================================
- Coverage 78.92% 78.84% -0.08%
==========================================
Files 134 135 +1
Lines 18084 18110 +26
==========================================
+ Hits 14272 14279 +7
- Misses 3341 3358 +17
- Partials 471 473 +2
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
You would have to ensure that all control client API calls handle billing project. I tried getFolder call and it failed with the same error. |
|
This PR also needs changes for other APIs called through storage-control-client, so marking this draft for now. Will have to rethink this change. |
d4c0001 to
e553e70
Compare
requester-pays buckets4d13e6e to
1df5cca
Compare
|
For some weird reason, this change is failing emulator_tests consistently (with the error |
Yeah, my bad. That was an outdated description from a previous iteration of the change, not needed anymore. |
d78fb90 to
68d3889
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Description
Pass billing-project in every GCS call, except LROs (Long Running Operations) from storage control-client (through "x-goog-user-project") to fix mounting and operations of
requester-paysbuckets . This functionality was broken since v2.9.0 .This fixes the mount of
requester-paysbuckets, as well as the following operations which go through storage-control-client.# failing even after passing the billing-project until the bug fix for GCS bug (b/414790551) completely rolls out.Works as b/414790551 has been fixed.In terms of code, this also required
StorageControlClientfor the case when a billing-project has been specified by the gcsfuse user.Note: After this PR merged, E2e tests need to be added for requester-pays buckets. That task is captured in b/415244758
Link to the issue in case of a bug fix.
b/406090515, b/405913611, #3111
Testing details
Tested folder rename operation, which failed with following error (captured in b/414790551)Any backward incompatible change? If so, please explain.