mirror of
https://github.com/s3fs-fuse/s3fs-fuse.git
synced 2026-04-25 05:16:00 +03:00
[PR #2602] [MERGED] Refactored single type requests to use through ThreadPoolMan #2659
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#2659
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/2602
Author: @ggtakec
Created: 11/10/2024
Status: ✅ Merged
Merged: 11/12/2024
Merged by: @gaul
Base:
master← Head:multi/2_use_threadpool📝 Commits (1)
d494604Refactored single type requests to use through ThreadPoolMan📊 Changes
16 files changed (+1463 additions, -456 deletions)
View changed files
📝
src/Makefile.am(+1 -0)📝
src/curl.cpp(+68 -89)📝
src/curl.h(+19 -22)📝
src/fdcache_entity.cpp(+258 -96)📝
src/fdcache_entity.h(+5 -3)📝
src/fdcache_fdinfo.cpp(+52 -16)📝
src/fdcache_fdinfo.h(+1 -18)📝
src/mpu_util.cpp(+2 -5)📝
src/s3fs.cpp(+181 -152)📝
src/s3fs_cred.cpp(+50 -49)📝
src/s3fs_cred.h(+15 -5)📝
src/s3fs_help.cpp(+1 -1)➕
src/s3fs_threadreqs.cpp(+591 -0)➕
src/s3fs_threadreqs.h(+187 -0)📝
src/threadpoolman.cpp(+31 -0)📝
src/threadpoolman.h(+1 -0)📄 Description
Relevant Issue (if applicable)
#2600
Details
This is the split PR Phase 2 (2/8) for #2600.
Single requests(synchronous requests) are changed to process by a worker thread managed by
ThreadPoolMan.The implementation of each request process has been moved to the handler(Callback) function of the worker thread.
As a result, the
S3fsCurlobject held by each request process function has been moved to a worker thread managed byThreadPoolMan.(In a future PR, the construction location of the
S3fsCurlobject will be moved again.)All worker thread processing is concentrated in new
s3fs_threadreqs.cppfile.(From now on, I will continue to concentrate in this file.)
Asynchronous and multi-request processing is not yet modified in this PR.
This PR will be rebased and removed from draft status once the previous PR(#2601) is merged into master.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.