cURL / Mailing Lists / curl-library / Single Mail

curl-library

Re: Porting CURL to the AirplaySDK environment

From: Всеволод Новиков <novikov_at_doroga.tv>
Date: Mon, 31 Jan 2011 12:47:45 +0300

Hi Daniel,
>>> Failed test cases with the threaded resolver:
>>> 532 536 573
>> No fails are reproduced on my hosts:
>
> Did you use 'configure --enable-debug' before you ran the tests? With
> your second patch, I got the threaded resolver version to fail on these:
I was using sequentially 3 different ways to start tests:
1) configure --enable-debug --enable-curldebug
--enable-threaded-resolver ... && make && make tests
2) the same configuration with hand-starting runtests.pl -n ... (disable
using valgrind)
3) configure --disable-debug --disable-curldebug
--enable-threaded-resolver ... && make && make tests

fails are not reproduced in all three cases on my host

On the FreeBSD host (2x4-core Intel processors, under high load - our
really working server) I was starting only case (3) - no fails are
reproduced.

I think the threaded resolver code should be manually reviewed
intentionally, and tests passed on your host, or where they are
reproduced less-or-more.
>>> - waitperform(conn, timeout_ms);
>>> + Curl_is_resolved(conn,&temp_entry);
>
>> fixed, but I am not sure that this call is used somewhere in the test
>> suite ... on the other hand this call is used inside a library
>> itself, but in very special case.
>
> Yes? Like in *every single request* when the easy interface is used
> and libcurl is built to use c-ares. It wouldn't trigger a test failure
> since we don't have any ways in the test suite to detect such errors.
The Curl_is_resolved code also makes a waitperform() call, but with a
timeout_ms=0. This causes poll() call anyway, but with a zero timeout,
so it would not load a system by busy state, especially on *nix hosts,
as I hope - I've seen such code in other places as a replacement for
sleep(0)/usleep(0) call especially to avoid system load. But anyway it
is fixed now ...

>> Amount of my time allocated for this job is almost exhausted. Hope,
>> the result is useful.
>
> Thanks, I'll try to make something out of it.
That's great, hope to see our patches in the next curl release.

Regards,
Vsevolod

-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette: http://curl.haxx.se/mail/etiquette.html
Received on 2011-01-31