Comments (7)
Could you verify this? Many thanks.
Sure. I can confirm that this version fixes the problem.
from curl.
Thanks, with the new test case in place, I hope we can avoid stumbling into this again in the future.
from curl.
I tried to reproduce the situation in a curl test case, so that we can avoid regressions on this in the future. The case where I could reproduce a stall with the server going aways is:
A transfer
- where the upload is PAUSED
- where the download is done
- the server closes the connection
If this is indeed the situation that you are in with the etcd
server (speculating here), then this points to a poor HTTP API design. Which you can probably do nothing about, I just wanted to mention it.
from curl.
Could you verify if #13271 addresses your issue?
from curl.
Could you verify if #13271 addresses your issue?
Sure, will do and report soon.
from curl.
The issue is still present with a patch on top of the master (60971d6).
Curl's output:
Captured stderr:
* !!! WARNING !!!
* This is a debug build of libcurl, do not use in production.
* STATE: INIT => CONNECT handle 0x5d9a3121cbc8; line 1910
* Curl_client_reset(), clear readers
* Added connection 0. The cache now contains 1 members
* Host localhost:2379 was resolved.
* IPv6: ::1
* IPv4: 127.0.0.1
* STATE: CONNECT => CONNECTING handle 0x5d9a3121cbc8; line 1964
* Trying [::1]:2379...
* connect to ::1 port 2379 from ::1 port 52424 failed: Connection refused
* Trying 127.0.0.1:2379...
* Connected to localhost (127.0.0.1) port 2379
* STATE: CONNECTING => PROTOCONNECT handle 0x5d9a3121cbc8; line 2072
* STATE: PROTOCONNECT => DO handle 0x5d9a3121cbc8; line 2101
* cr_exp100_read, start AWAITING_CONTINUE
> POST /v3/watch HTTP/1.1
Host: localhost:2379
Transfer-Encoding: chunked
Accept: */*
Connection: Keep-Alive
Keep-Alive: timeout=1
Expect: 100-continue
* STATE: DO => DID handle 0x5d9a3121cbc8; line 2197
* STATE: DID => PERFORMING handle 0x5d9a3121cbc8; line 2315
* cr_exp100_read, AWAITING_CONTINUE, not expired
* HTTP 1.1 or later with persistent connection
< HTTP/1.1 100 Continue
<
* cr_exp100_read, pass through
* cr_in_read(len=65524, total=-1, read=0) -> 0, 0, 0
* nread <= 0, server closed connection, bailing
from curl.
Thanks @ligurio for the log output. I believe I have not a correct test case for the situation and a better fix in #13271. Could you verify this? Many thanks.
from curl.
Related Issues (20)
- Windows DNS resolution fails when impersonation is used HOT 9
- --interface and CURLOPT_INTERFACE works different for Ip Address and Interface HOT 5
- `wakeup_create` implementations "leak" file descriptors to process children HOT 1
- Disabling USE_UNIX_SOCKETS does not remove the use of AF_UNIX when compiling libcurl. HOT 5
- TFTP tests fail on OpenBSD (ci/GHA) HOT 5
- Dependency Dashboard HOT 6
- mbedTLS 3.6.0 breaks curl HOT 1
- curl+openssl crashed HOT 4
- CURLE_RECV_ERROR was returned in case of a write function error HOT 4
- SSLKEYLOGFILE not working with curl-for-win build HOT 3
- Bug NTLM authentication wrong behavior with the head flag --head or -I HOT 1
- curl_easy_perform() failed: Unsupported protocol (WSS) HOT 1
- libcurl using client reports curl error 92 "Stream error in the HTTP/2 framing layer" when receiving a 204 No content reponse from HTTP/2 server to a DELETE request HOT 3
- CURLOPT_WRITEFUNCTION documentation inconsistency HOT 1
- Segfault in encodeDN
- WebSocket tests 2301, 2302 flaky on Windows (mingw-w64) HOT 2
- CURLOPT_MAX_RECV_SPEED_LARGE < 7623 breaks SFTP download HOT 7
- GCC-14 build fails on MacOSX using vcpkg HOT 3
- urlencode data result not expect HOT 3
- Progress meter not displayed until transfer ends HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from curl.