[OpenSIPS-Devel] [OpenSIPS/opensips] ed8984: rest_client: Fix issues with libcurl parallel tran...

Liviu Chircu liviu at opensips.org
Mon Dec 19 06:56:36 EST 2016


  Branch: refs/heads/master
  Home:   https://github.com/OpenSIPS/opensips
  Commit: ed8984c54320a6712eb6469de2b42ebef4420b47
      https://github.com/OpenSIPS/opensips/commit/ed8984c54320a6712eb6469de2b42ebef4420b47
  Author: Liviu Chircu <liviu at opensips.org>
  Date:   2016-12-19 (Mon, 19 Dec 2016)

  Changed paths:
    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 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




More information about the Devel mailing list