mirror of
https://github.com/s3fs-fuse/s3fs-fuse.git
synced 2026-04-25 05:16:00 +03:00
[PR #2653] [MERGED] A case of HEAD response for mp is different on compatible storage #2687
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#2687
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/2653
Author: @ggtakec
Created: 4/2/2025
Status: ✅ Merged
Merged: 4/3/2025
Merged by: @gaul
Base:
master← Head:fix/mp_head_req📝 Commits (1)
96ce4daA case of HEAD response for mp is different on compatible storage📊 Changes
1 file changed (+22 additions, -3 deletions)
View changed files
📝
src/s3fs.cpp(+22 -3)📄 Description
Relevant Issue (if applicable)
#2246 #2304 #2423 #1964
Details
Using S3 compatible providers, it seems that in some cases a HEAD request to a mount point will return a
200error instead of a404error, even though the"/"object(path ="//") doesn't exist.In this case, the expected key name(ex.
x-amz-meta-*) doesn't exist in the response header, but other keys exist and the response header is not empty.With the current code, it works under the assumption that a
404error or an empty response header will be returned, so the file listing commands(ex,ls) is failed by the mount point is not a directory.To avoid this, I have changed the code to handle cases where the expected key name(e.g.
x-amz-meta-*) doesn't exist in the response header in the same way as a404error.🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.