-
-
Notifications
You must be signed in to change notification settings - Fork 6.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
It should be possible to dynamically decide if the Curl_multi should use socketpair #4829
Comments
I presume you want this because the socketpair creates some kind of problem or nuisance for you. Can you elaborate on why you want/need this? |
Some of our platforms are rather constrained on resources and since we're not calling curl_multi_wakeup the sockets will just sit there. This wouldn't be so bad for if it weren't for the fact that we have a multi handle per websocket connection. We've implemented websockets on top of CURLOPT_CONNECT_ONLY and ran into some issues with socket pooling. |
Allow initializing a multi with a specific socket table hash size, connection cache hash size, and flags. Flag CURL_MULTI_DISABLE_POLL_WAKEUP can be used to disable the curl_multi_poll wakeup socketpair. A user requested the option to disable creating those sockets due to resource constraints. Prior to this change it was not possible to disable the wakeup socketpair (added in 7.68.0) used by the multi. Reported-by: Anders Bakken Fixes curl#4829 Closes #xxxx
Allow initializing a multi with a specific socket table hash size, connection cache hash size, and flags. Flag CURL_MULTI_DISABLE_POLL_WAKEUP can be used to disable the curl_multi_poll wakeup socketpair. A user requested the option to disable creating those sockets due to resource constraints. Prior to this change it was not possible to disable the wakeup socketpair (added in 7.68.0) used by the multi. Reported-by: Anders Bakken Fixes curl#4829 Closes #xxxx
Allow initializing a multi with a specific socket table hash size, connection cache hash size, and flags. Flag CURL_MULTI_DISABLE_POLL_WAKEUP can be used to disable the curl_multi_poll wakeup socketpair. A user requested the option to disable creating those sockets due to resource constraints. Prior to this change it was not possible to disable the wakeup socketpair (added in 7.68.0) used by the multi. Reported-by: Anders Bakken Fixes curl#4829 Closes #xxxx
Allow initializing a multi with a specific socket table hash size, connection cache hash size, and flags. Flag CURL_MULTI_DISABLE_POLL_WAKEUP can be used to disable the curl_multi_poll wakeup socketpair. A user requested the option to disable creating those sockets due to resource constraints. Prior to this change it was not possible to disable the wakeup socketpair (added in 7.68.0) used by the multi. Reported-by: Anders Bakken Fixes curl#4829 Closes #xxxx
Allow initializing a multi with a specific socket table hash size, connection cache hash size, and flags. Flag CURL_MULTI_DISABLE_POLL_WAKEUP can be used to disable the curl_multi_poll wakeup socketpair. A user requested the option to disable creating those sockets due to resource constraints. Prior to this change it was not possible to disable the wakeup socketpair (added in 7.68.0) used by the multi. Reported-by: Anders Bakken Fixes curl#4829 Closes #xxxx
Allow initializing a multi with a specific socket table hash size, connection cache hash size, and flags. Flag CURL_MULTI_DISABLE_POLL_WAKEUP can be used to disable the curl_multi_poll wakeup socketpair. A user requested the option to disable creating those sockets due to resource constraints. Prior to this change it was not possible to disable the wakeup socketpair (added in 7.68.0) used by the multi. Reported-by: Anders Bakken Fixes curl#4829 Closes #xxxx
Allow initializing a multi with a specific socket table hash size, connection cache hash size, and flags. Flag CURL_MULTI_DISABLE_POLL_WAKEUP can be used to disable the curl_multi_poll wakeup socketpair. A user requested the option to disable creating those sockets due to resource constraints. Prior to this change it was not possible to disable the wakeup socketpair (added in 7.68.0) used by the multi. Reported-by: Anders Bakken Fixes curl#4829 Closes #xxxx
Allow initializing a multi with a specific socket table hash size, connection cache hash size, and flags. Flag CURL_MULTI_DISABLE_POLL_WAKEUP can be used to disable the curl_multi_poll wakeup socketpair. A user requested the option to disable creating those sockets due to resource constraints. Prior to this change it was not possible to disable the wakeup socketpair (added in 7.68.0) used by the multi. Reported-by: Anders Bakken Fixes curl#4829 Closes #xxxx
I'm running into this as well (with easy handles); the extra sockets just sit there and pile up until I run out of dynamic ports on loopback, even if I have connection reuse enabled for my main sockets. |
My PR to fix this did not gain enough support. I still think some remedy for this issue is a good idea. Someone will have to implement something more agreeable, or eventually I will close it in known issues (or TODO). |
Is this a problem for you on non-Windows platforms? If so, what resource are you running out of exactly? |
#5850 has added a build-time option to |
I did this
I did not use curl_multi_wait in my app
I expected the following
For curl not to allocate a socketpair for each multi handle
curl/libcurl version
master
[curl -V output]
operating system
linux
Ideally Curl should allow one or more of these options:
regards
The text was updated successfully, but these errors were encountered: