John Relph writes:
>Hi,
>
>I'm using lftp 3.5.1 on Red Hat Enterprise Linux 5 and I'm seeing a
>problem where lftp hangs in a loop using 100% of the CPU and no
>further file transfers take place.
>
>-------
>
>$ lftp --version
>LFTP | Version 3.5.1 | Copyright (c) 1996-2006 Alexander V. Lukyanov
>
>LFTP is free software, covered by the GNU General Public License, and you are
>welcome to change it and/or distribute copies of it under certain conditions.
>There is absolutely no warranty for LFTP.  See COPYING for details.
>
>Send bug reports and questions to <[email protected]>.
>
>Libraries used: Readline 5.1
>
>--------
>
>I'm creating a script and then running "lftp -f script" from a perl
>hack.  The script starts with the following:
>
>set cmd:verbose yes
>set net:timeout 300
>set net:max-retries 5
>set cmd:fail-exit true
>set cmd:move-background false
>
>And then opens a passworded connection to an sftp server after which
>it uses multiple "pget"s to download a big steaming pile of large
>files.
>
>The perl hack is reading from the stdout of the lftp process and the
>stderr of the lftp process is dup'ed to stderr:
>
>lftp -f script 2>&1
>
>After some number of files correctly transferred, sometimes tens of
>files and sometimes only a few, lftp "hangs".  That is, it stops,
>looping, using 100% of the cpu, no further files are transferred and
>no additional output is generated.  Since the stdout/stderr of lftp
>are using buffered output, I am unable to tell at which point the file
>transfer stops working.  Nor can I tell why.
>
>strace of the looping process gives no output, so no system calls are
>being made.  Numerous ssh processes are running, but they are sitting
>in select:
>
>agent    29058 29055  0 18:17 pts/2    00:00:02 ssh -a -x -s -l user hostname 
>sftp
>agent    29066 29055  0 18:17 pts/3    00:00:02 ssh -a -x -s -l user hostname 
>sftp
>agent    29068 29055  0 18:17 pts/5    00:00:02 ssh -a -x -s -l user hostname 
>sftp
>agent    29069 29055  0 18:17 pts/6    00:00:02 ssh -a -x -s -l user hostname 
>sftp
>
>$ strace -p 29066
>select(8, [4 5], [6], NULL, NULL

I ran strace on a new lftp process and the last call is:

unlink(some-file.lftp-pget-status) = -1 (File does not exist)

or something like that, I accidentally erased the screen attempting
to see if the process had in fact hung.

Once the unlink fails, the process starts using 100% of the CPU.

        -- John

>This problem did not occur on RHEL4 (lftp 2.6.3).  The problem has
>only started happening since we upgraded systems to RHEL5.
>
>Any ideas?
>
>       -- John
>
>-- 
>John Relph <[EMAIL PROTECTED]>
>NOAA/NESDIS/National Oceanographic Data Center

-- 
John Relph <[EMAIL PROTECTED]>
NOAA/NESDIS/National Oceanographic Data Center

Reply via email to