Buy commercial curl support from WolfSSL. We help you work
out your issues, debug your libcurl applications, use the API, port to new
platforms, add new features and more. With a team lead by the curl founder
himself.
problem with unpaused connection
- Contemporary messages sorted: [ by date ] [ by thread ] [ by subject ] [ by author ] [ by messages with attachments ]
From: Sergey Bronnikov via curl-library <curl-library_at_lists.haxx.se>
Date: Thu, 18 Jan 2024 13:46:34 +0300
Hello, everyone
I'm stuck with a problem and asking for a help.
Context:
we have a project that contains a HTTP client with Lua API implemented
using Curl library, sources are [3] and [4].
This Lua HTTP client used in another closed-source Lua module that
implements an etcd client in Lua.
Before Curl version 8.4.0 everything worked fine (exactly with Curl
8.3.0), but after updating Curl to 8.4.0 in our HTTP client
some tests for etcd-client Lua module became failed from time to time.
There are test logs for passed and failed cases with enabled debug in
curl: [5] and [6] and diff [7].
Observations:
1. The problem is specific for HTTP/2 protocol, because problem is gone
if force HTTP 1.1 protocol with CURL_HTTP_VERSION_1_1.
2. Problem is triggered by commit [3] introduced in Curl 8.4.0 [4],
because the problem is gone after reverting aforementioned commit.
Symptoms:
curl library with enabled debug prints a message below before a test fail:
> readwrite, dselect_bits, early return on PAUSED
This message was introduced in aforementioned commit to curl library.
Current version of Curl library: 8.5.0
OS: Ubuntu x86_64 22.04
What could cause a problem? As I got a debug message right connection
become paused
and no one unpause it. Curl callback 'curl_easy_io_read_cb' returns
CURL_READFUNC_PAUSE
and on next read httpc_request_io_write unpauses connection with
CURLPAUSE_SEND_CONT.
1. https://github.com/tarantool/tarantool/blob/master/src/curl.c
2. https://github.com/tarantool/tarantool/blob/master/src/httpc.c
3.
https://github.com/curl/curl/commit/6b9a591bf7d82031f463373706d7de1cba0adee6
4. https://curl.se/changes.html#8_4_0
5.
https://github.com/ligurio/snippets/blob/master/curl-question/curl-fail.log
6.
https://github.com/ligurio/snippets/blob/master/curl-question/curl-pass.log
7.
https://github.com/ligurio/snippets/blob/master/curl-question/curl-diff.log
Date: Thu, 18 Jan 2024 13:46:34 +0300
Hello, everyone
I'm stuck with a problem and asking for a help.
Context:
we have a project that contains a HTTP client with Lua API implemented
using Curl library, sources are [3] and [4].
This Lua HTTP client used in another closed-source Lua module that
implements an etcd client in Lua.
Before Curl version 8.4.0 everything worked fine (exactly with Curl
8.3.0), but after updating Curl to 8.4.0 in our HTTP client
some tests for etcd-client Lua module became failed from time to time.
There are test logs for passed and failed cases with enabled debug in
curl: [5] and [6] and diff [7].
Observations:
1. The problem is specific for HTTP/2 protocol, because problem is gone
if force HTTP 1.1 protocol with CURL_HTTP_VERSION_1_1.
2. Problem is triggered by commit [3] introduced in Curl 8.4.0 [4],
because the problem is gone after reverting aforementioned commit.
Symptoms:
curl library with enabled debug prints a message below before a test fail:
> readwrite, dselect_bits, early return on PAUSED
This message was introduced in aforementioned commit to curl library.
Current version of Curl library: 8.5.0
OS: Ubuntu x86_64 22.04
What could cause a problem? As I got a debug message right connection
become paused
and no one unpause it. Curl callback 'curl_easy_io_read_cb' returns
CURL_READFUNC_PAUSE
and on next read httpc_request_io_write unpauses connection with
CURLPAUSE_SEND_CONT.
1. https://github.com/tarantool/tarantool/blob/master/src/curl.c
2. https://github.com/tarantool/tarantool/blob/master/src/httpc.c
3.
https://github.com/curl/curl/commit/6b9a591bf7d82031f463373706d7de1cba0adee6
4. https://curl.se/changes.html#8_4_0
5.
https://github.com/ligurio/snippets/blob/master/curl-question/curl-fail.log
6.
https://github.com/ligurio/snippets/blob/master/curl-question/curl-pass.log
7.
https://github.com/ligurio/snippets/blob/master/curl-question/curl-diff.log
-- Unsubscribe: https://lists.haxx.se/mailman/listinfo/curl-library Etiquette: https://curl.se/mail/etiquette.htmlReceived on 2024-01-18