Public bug reported:

I have been working on Ubuntu Server 14.04 LTS

Curl version is:
curl 7.35.0 (x86_64-pc-linux-gnu) libcurl/7.35.0 OpenSSL/1.0.1f zlib/1.2.8 
libidn/1.28 librtmp/2.3
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 
pop3s rtmp rtsp smtp smtps telnet tftp 
Features: AsynchDNS GSS-Negotiate IDN IPv6 Largefile NTLM NTLM_WB SSL libz 
TLS-SRP 

In my project I have In background a lot of php processes working and executing 
curl commands. After some time (less than one day) processes stop.
Log file shows that they stop on execution curl function and never go forward.
It's bad because process still working and system doesn't recognize when it's 
hanging.

strace of the process showed me this:

$ sudo strace -p 30343
Process 30343 attached
restart_syscall(<... resuming interrupted call ...>) = 0
clock_gettime(CLOCK_MONOTONIC, {961216, 454702757}) = 0
clock_gettime(CLOCK_MONOTONIC, {961216, 454751197}) = 0
poll([{fd=5, events=POLLIN|POLLPRI|POLLRDNORM|POLLRDBAND}], 1, 0) = 0 (Timeout)
clock_gettime(CLOCK_MONOTONIC, {961216, 454820667}) = 0
clock_gettime(CLOCK_MONOTONIC, {961216, 454842339}) = 0
clock_gettime(CLOCK_MONOTONIC, {961216, 454870627}) = 0
clock_gettime(CLOCK_MONOTONIC, {961216, 454894172}) = 0
clock_gettime(CLOCK_MONOTONIC, {961216, 454920104}) = 0
poll([{fd=5, events=POLLIN}], 1, 1000)  = 0 (Timeout)
clock_gettime(CLOCK_MONOTONIC, {961217, 456135856}) = 0
clock_gettime(CLOCK_MONOTONIC, {961217, 456173715}) = 0
poll([{fd=5, events=POLLIN|POLLPRI|POLLRDNORM|POLLRDBAND}], 1, 0) = 0 (Timeout)

Looks like it retries over and over to read/write data in file descriptor 5.
Look at file descriptors:

sudo ls -l /proc/30343/fd/
total 0
lr-x------ 1 se se 64 Feb 12 03:09 0 -> /dev/null
l-wx------ 1 se se 64 Feb 12 03:09 1 -> 
/var/www/html/SE/logs/tweetscan.1502111009.30340.log
l-wx------ 1 se se 64 Feb 12 03:09 2 -> 
/var/www/html/SE/logs/tweetscan.1502111009.30340.log
lrwx------ 1 se se 64 Feb 12 03:09 3 -> socket:[32681601]
lrwx------ 1 se se 64 Feb 12 03:09 4 -> 
/var/lib/php5/sess_9vstn2jcd82u1dla80enkra1u1
lrwx------ 1 se se 64 Feb 12 03:09 5 -> socket:[33112628]

fd=5 - means our socket and I am sure that this is my curl.

I know the problem could be inside lib_curl library, but the question is 
simple. 
Why  didn't you updated lib_curl from version 7.35 to 7.40 (which is latest and 
probably bug is fixed there).
In comparison Linux AMI (fedora in their case) now has 7.40 in their repository.

Looking forward for you answer...

Thanks,
- Oleg

** Affects: curl (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: curl

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to curl in Ubuntu.
https://bugs.launchpad.net/bugs/1423175

Title:
  CURL 7.35 hang

Status in curl package in Ubuntu:
  New

Bug description:
  I have been working on Ubuntu Server 14.04 LTS

  Curl version is:
  curl 7.35.0 (x86_64-pc-linux-gnu) libcurl/7.35.0 OpenSSL/1.0.1f zlib/1.2.8 
libidn/1.28 librtmp/2.3
  Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 
pop3s rtmp rtsp smtp smtps telnet tftp 
  Features: AsynchDNS GSS-Negotiate IDN IPv6 Largefile NTLM NTLM_WB SSL libz 
TLS-SRP 

  In my project I have In background a lot of php processes working and 
executing curl commands. After some time (less than one day) processes stop.
  Log file shows that they stop on execution curl function and never go forward.
  It's bad because process still working and system doesn't recognize when it's 
hanging.

  strace of the process showed me this:

  $ sudo strace -p 30343
  Process 30343 attached
  restart_syscall(<... resuming interrupted call ...>) = 0
  clock_gettime(CLOCK_MONOTONIC, {961216, 454702757}) = 0
  clock_gettime(CLOCK_MONOTONIC, {961216, 454751197}) = 0
  poll([{fd=5, events=POLLIN|POLLPRI|POLLRDNORM|POLLRDBAND}], 1, 0) = 0 
(Timeout)
  clock_gettime(CLOCK_MONOTONIC, {961216, 454820667}) = 0
  clock_gettime(CLOCK_MONOTONIC, {961216, 454842339}) = 0
  clock_gettime(CLOCK_MONOTONIC, {961216, 454870627}) = 0
  clock_gettime(CLOCK_MONOTONIC, {961216, 454894172}) = 0
  clock_gettime(CLOCK_MONOTONIC, {961216, 454920104}) = 0
  poll([{fd=5, events=POLLIN}], 1, 1000)  = 0 (Timeout)
  clock_gettime(CLOCK_MONOTONIC, {961217, 456135856}) = 0
  clock_gettime(CLOCK_MONOTONIC, {961217, 456173715}) = 0
  poll([{fd=5, events=POLLIN|POLLPRI|POLLRDNORM|POLLRDBAND}], 1, 0) = 0 
(Timeout)

  Looks like it retries over and over to read/write data in file descriptor 5.
  Look at file descriptors:

  sudo ls -l /proc/30343/fd/
  total 0
  lr-x------ 1 se se 64 Feb 12 03:09 0 -> /dev/null
  l-wx------ 1 se se 64 Feb 12 03:09 1 -> 
/var/www/html/SE/logs/tweetscan.1502111009.30340.log
  l-wx------ 1 se se 64 Feb 12 03:09 2 -> 
/var/www/html/SE/logs/tweetscan.1502111009.30340.log
  lrwx------ 1 se se 64 Feb 12 03:09 3 -> socket:[32681601]
  lrwx------ 1 se se 64 Feb 12 03:09 4 -> 
/var/lib/php5/sess_9vstn2jcd82u1dla80enkra1u1
  lrwx------ 1 se se 64 Feb 12 03:09 5 -> socket:[33112628]

  fd=5 - means our socket and I am sure that this is my curl.

  I know the problem could be inside lib_curl library, but the question is 
simple. 
  Why  didn't you updated lib_curl from version 7.35 to 7.40 (which is latest 
and probably bug is fixed there).
  In comparison Linux AMI (fedora in their case) now has 7.40 in their 
repository.

  Looking forward for you answer...

  Thanks,
  - Oleg

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/curl/+bug/1423175/+subscriptions

-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to