mirror of
https://github.com/s3fs-fuse/s3fs-fuse.git
synced 2026-04-25 05:16:00 +03:00
[PR #2087] [MERGED] Retry BucketCheck containing directory paths #2332
Labels
No labels
bug
bug
dataloss
duplicate
enhancement
feature request
help wanted
invalid
need info
performance
pull-request
question
question
testing
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/s3fs-fuse#2332
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/s3fs-fuse/s3fs-fuse/pull/2087
Author: @ggtakec
Created: 1/5/2023
Status: ✅ Merged
Merged: 1/9/2023
Merged by: @gaul
Base:
master← Head:fix_bucket_check📝 Commits (1)
021bce4Retry BucketCheck containing directory paths📊 Changes
3 files changed (+60 additions, -13 deletions)
View changed files
📝
src/curl.cpp(+7 -3)📝
src/curl.h(+1 -1)📝
src/s3fs.cpp(+52 -9)📄 Description
Relevant Issue (if applicable)
#2063 #1728 #1687 #1460
Details
Fixed a bug where a bucket has no permissions and a directory has permissions, and a mount with that directory fails.
This PR is related to #1728 which was previously fixed.
Specification
Here's a bucket check on s3fs startup and a description of how it works in this PR.
The following patterns for mount point are supported by s3fs:
( 2A) Directories created by clients other than s3fs
( 2B) Directory created by s3fs
At first, if user has access to the bucket, the checking access to the bucket succeeds and this function returns success.
However, if user does not have access to the bucket and has permissions to the directory, this first check will fail.
But if user specifies the directory for mount point, this function retries to check with the path containing the directory.
And it will be success.
In the case of (2A), the check will succeed if the bucket allows to access, but will fail if permissions are granted only to the directory, as it is not a directory recognized by s3fs.
This combination is not supported by s3fs, so make sure user create the directory before starting s3fs.
In case (2B), if user does not have access to bucket, the first check(to bucket) fails, but the retry check(with path) succeeds.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.