in reply to Net::Curl::Multi on Amazon Linux 2023 instance

Searching Net::Curl::Multi for callback function is not set returns a function of Net::Curl::Multi that raises this error, because some callback was not set. But it does not tell us, which callback it wanted to call.

As the problem is intermittent, I would assume some timeout or error condition. Maybe you can diagnose that using Wireshark or some other network sniffer, or find another way to set up all kinds of callback handlers to see which one placates the behaviour of Net::Curl or Net::Curl::Multi.

Replies are listed 'Best First'.
Re^2: Net::Curl::Multi on Amazon Linux 2023 instance
by Krambambuli (Curate) on Nov 21, 2024 at 07:23 UTC
    Thank you.

    It is for sure a DNS related issue, as strace and the proper use of verbose debugging (ineffective in the buggy debug code that I have posted) show.

    I am suspecting that there is an issue with Curl.xs and AsyncDNS, and that Curl.xs (v. 0.56) does _not_ provide a way to set CURLOPT_RESOLVER_START_FUNCTION, which might be necessary for and is available in the underlying libcurl (v. 8.5.0).

    I've emailed a question to the maintainer of Net::Curl::Multi, maybe he'll answer.

    Hope so, as I am not at all comfortable with the .xs stuff.

    I'm curious and have NO IDEA how I could find out which exactly the missing callback is.