On Tue, 9 Aug 2016, Farabet Olivier wrote:

- strace : I've called it with -T, there are time info in system calls and the system calls during the gap are the following ones

I assume your mailer strips the times then or something because they certainly don't show up here... But still, look at these strace details:

[pid   990] write(23, "09/08/2016 10:16:02 curlWriteCal"..., 60) = 60

Is this the last received header?

[pid   990] poll([{fd=22, events=POLLIN}], 1, 36) = 0 (Timeout)

Timeout the waiting for more data.

[pid   990] poll([{fd=22, events=POLLIN}], 1, 1000) = 0 (Timeout)
[pid   990] poll([{fd=22, events=POLLIN|POLLPRI|POLLRDNORM|POLLRDBAND}], 1,
0) = 0 (Timeout)

... and we see about 14 more timeouts like the one above. Each waiting 1000 milliseconds. That's saying the kernel hasn't delivered any data to the socket for libcurl to read.

[pid   990] poll([{fd=22, events=POLLIN}], 1, 1000) = 1 ([{fd=22,
revents=POLLIN}])

*There*, data has finally arrived after a long time waiting. I can't see that libcurl does anything wrong there! Can you?

[pid   990] recvfrom(22, "oll'\" />\r\n      <var name=\"TELID"..., 1731,
0, NULL, NULL) = 1731

... and it reads 1731 bytes. I assume the rest then follows as it loops to read more.

--

 / daniel.haxx.se
-------------------------------------------------------------------
List admin: https://cool.haxx.se/list/listinfo/curl-library
Etiquette:  https://curl.haxx.se/mail/etiquette.html

Reply via email to