[PR #2774] Added putheader_mp_threshold option #2785

Open
opened 2026-03-04 02:07:16 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/s3fs-fuse/s3fs-fuse/pull/2774
Author: @ggtakec
Created: 12/14/2025
Status: 🔄 Open

Base: masterHead: add/opts


📝 Commits (1)

  • d20712a Added putheader_mp_threshold option

📊 Changes

3 files changed (+23 additions, -1 deletions)

View changed files

📝 doc/man/s3fs.1.in (+7 -0)
📝 src/s3fs.cpp (+10 -1)
📝 src/s3fs_help.cpp (+6 -0)

📄 Description

Relevant Issue (if applicable)

##2764

Details

Currently, the value of multipart_threshold determines whether to upload a multipart object and its header (put_header).

Depending on the use case, there may be cases where performance is better if put_header is not executed in multipart.
For example, this is the case when using rsync as in #2764.
Executing put_header in multipart increases the number of request communications, which raises concerns about performance degradation.

To resolve this issue, we will now separate the thresholds for multipart upload and multipart header upload.
I have added putheader_mp_threshold, which allows user to set the threshold for executing this header upload in multipart.
If putheader_mp_threshold is not specified, the value of multipart_threshold will be used, as before.

@gaul
Although I have some concerns about adding more options, I have decided that it is necessary to provide optimal performance depending on the user (environment, execution content).
This PR is currently in Draft, but if there are no problems, I plan to change status to not set Draft.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/s3fs-fuse/s3fs-fuse/pull/2774 **Author:** [@ggtakec](https://github.com/ggtakec) **Created:** 12/14/2025 **Status:** 🔄 Open **Base:** `master` ← **Head:** `add/opts` --- ### 📝 Commits (1) - [`d20712a`](https://github.com/s3fs-fuse/s3fs-fuse/commit/d20712a45b4cb9e695b9139cc891e8ac1c2fdb6a) Added putheader_mp_threshold option ### 📊 Changes **3 files changed** (+23 additions, -1 deletions) <details> <summary>View changed files</summary> 📝 `doc/man/s3fs.1.in` (+7 -0) 📝 `src/s3fs.cpp` (+10 -1) 📝 `src/s3fs_help.cpp` (+6 -0) </details> ### 📄 Description ### Relevant Issue (if applicable) ##2764 ### Details Currently, the value of multipart_threshold determines whether to upload a multipart object and its header (put_header). Depending on the use case, there may be cases where performance is better if put_header is not executed in multipart. For example, this is the case when using rsync as in #2764. Executing put_header in multipart increases the number of request communications, which raises concerns about performance degradation. To resolve this issue, we will now separate the thresholds for multipart upload and multipart header upload. I have added `putheader_mp_threshold`, which allows user to set the threshold for executing this header upload in multipart. If `putheader_mp_threshold` is not specified, the value of `multipart_threshold` will be used, as before. @gaul Although I have some concerns about adding more options, I have decided that it is necessary to provide optimal performance depending on the user (environment, execution content). This PR is currently in Draft, but if there are no problems, I plan to change status to not set Draft. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/s3fs-fuse#2785
No description provided.