mirror of
https://github.com/s3fs-fuse/s3fs-fuse.git
synced 2026-04-25 21:35:58 +03:00
[PR #739] [MERGED] cleanup curl handle state on retries #1622
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#1622
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/739
Author: @orozery
Created: 3/29/2018
Status: ✅ Merged
Merged: 4/1/2018
Merged by: @ggtakec
Base:
master← Head:cleanup_failing_curl_handles📝 Commits (1)
adcf575cleanup failing curl handles on retries📊 Changes
1 file changed (+8 additions, -1 deletions)
View changed files
📝
src/curl.cpp(+8 -1)📄 Description
Details
I encountered this re-occurring issue, popping once every few days of running an s3fs mountpoint:
A curl request failed with a readwrite_timeout.
S3fs retries the request -> gets curl error 35 CURLE_SSL_CONNECT_ERROR.
The same request is retried again -> same error CURLE_SSL_CONNECT_ERROR.
While the retries of this request fail, other requests do complete successfully.
This lead me to think that the CURL handle of the retry connection is re-using state (specifically SSL state) from the old (failing) connection.
I made this PR to cleanup the SSL state (or any other state) of the retry handle, by creating a fresh handle, with curl caches disabled (only for the retry request).
I tested with this patch and found that the issue is resolved.
@ggtakec would appreciate your approval.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.