[OpenSIPS-Devel] [OpenSIPS/opensips] 0d0eea: rest_client: Fix issues with libcurl parallel tran...
Liviu Chircu
liviu at opensips.org
Tue Dec 20 10:02:02 EST 2016
Branch: refs/heads/2.2
Home: https://github.com/OpenSIPS/opensips
Commit: 0d0eea9201812887599f5683c75012342421bba6
https://github.com/OpenSIPS/opensips/commit/0d0eea9201812887599f5683c75012342421bba6
Author: Liviu Chircu <liviu at opensips.org>
Date: 2016-12-20 (Tue, 20 Dec 2016)
Changed paths:
A lib/container.h
A lib/list.h
M modules/rest_client/rest_client.c
M modules/rest_client/rest_methods.c
M modules/rest_client/rest_methods.h
Log Message:
-----------
rest_client: Fix issues with libcurl parallel transfers
We cannot use the "parallel transfers" feature of libcurl's multi interface
because that would consume read events from some of its file descriptors that
had previously been added to the OpenSIPS reactor. This would sometimes lead
to dangling descriptors in the reactor, as well as some OpenSIPS async routes
which are not triggered.
To work around this, we can still achieve the desired effect with a pool of
multi handles each doing a single transfer, rather than using 1 multi handle
doing multiple transfers.
Thanks for reporting and troubleshooting to @arovetto and Agalya Ramachandran
Fixes issue #997
(cherry picked from commit ed8984c54320a6712eb6469de2b42ebef4420b47)
Conflicts:
modules/rest_client/rest_client.c
More information about the Devel
mailing list