ftplib throws: IndexError: tuple index out of range
Antoon Pardon
antoon.pardon at rece.vub.ac.be
Sun Feb 14 05:54:39 EST 2016
I have written a small backup program, that uses ftplib to make
remote backups. However recentely the program starts to regularly
raise IndexErrors, as far as I can see the problem is in socket.py
Can anyone shed some light?
This is the traceback:
Traceback (most recent call last):
File "/usr/local/lib/python-apps/rmtdump/pymain.py", line 93, in main
Exit_Nr = process(sys.argv)
File "/usr/local/lib/python-apps/rmtdump/rmtdump.py", line 228, in program
process(path)
File "/usr/local/lib/python-apps/rmtdump/rmtdump.py", line 170, in process
of = rmt.open(rmtsep.join([rmt5lcl(rt), archive]), "wb")
File "/usr/local/lib/python-apps/rmtdump/ftputil.py", line 198, in open
return ftpfile(ftp, fn, mode, True)
File "/usr/local/lib/python-apps/rmtdump/ftputil.py", line 69, in __init__
self.cnct = self.ftp.transfercmd("%s %s" % (cmd, rfn))
File "/usr/lib/python2.7/ftplib.py", line 376, in transfercmd
return self.ntransfercmd(cmd, rest)[0]
File "/usr/lib/python2.7/ftplib.py", line 693, in ntransfercmd
conn, size = FTP.ntransfercmd(self, cmd, rest)
File "/usr/lib/python2.7/ftplib.py", line 339, in ntransfercmd
resp = self.sendcmd(cmd)
File "/usr/lib/python2.7/ftplib.py", line 249, in sendcmd
return self.getresp()
File "/usr/lib/python2.7/ftplib.py", line 215, in getresp
resp = self.getmultiline()
File "/usr/lib/python2.7/ftplib.py", line 201, in getmultiline
line = self.getline()
File "/usr/lib/python2.7/ftplib.py", line 186, in getline
line = self.file.readline(self.maxline + 1)
File "/usr/lib/python2.7/socket.py", line 478, in readline
if e.args[0] == EINTR:
IndexError: tuple index out of range
Locals by frame, innermost last
Frame main in /usr/local/lib/python-apps/rmtdump/pymain.py at line 111
backtrace = <function backtrace at 0x7ff8c5d36230>
pn = 'rmtdump'
process = <function program at 0x7ff8c5d361b8>
Frame program in /usr/local/lib/python-apps/rmtdump/rmtdump.py at line 261
aborted = True
argv = ['/usr/local/sbin/rmtdump']
path = '/home'
Frame process in /usr/local/lib/python-apps/rmtdump/rmtdump.py at line 190
b_rt = '/home'
backupflag = 'r--'
backupstamp = 1453021366
checkstamp = 1450374304
dirs = ['antoon', 'jenny', 'lost+found', 'photo']
entries = ['0-home', 'antoon', 'homelady', 'jenny', 'lost+found', 'photo', 'recover']
entry = 'recover'
fileinfo = posix.stat_result(st_mode=16877, st_ino=2490369, st_dev=2058L, st_nlink=5, st_uid=0, st_gid=0, st_size=4 ...
files = []
fqpn = '/home/recover'
islink = <function islink at 0x7ff8c9073500>
ismount = <function ismount at 0x7ff8c9073758>
last = 1455445804.979914
newfn = 'home/!2016-01-17 at 10_02_46-tbz'
now = 1455445804
nr_of_tries = 0
of = None
oldfn = 'home/!ENTRY-tbz'
path = '/home'
rt = '/home'
stamp = '1450374304'
start = 1455445804
timefn = '!2016-01-17 at 10_02_46-tbz'
tryal = 1
update = True
Frame open in /usr/local/lib/python-apps/rmtdump/ftputil.py at line 198
fn = 'home/!ENTRY-tbz'
ftp = <ftputil.FTP instance at 0x7ff8c5d3add0>
mode = 'wb'
self = <ftputil.FTP instance at 0x7ff8c5d3acf8>
Frame __init__ in /usr/local/lib/python-apps/rmtdump/ftputil.py at line 69
bound = True
ch = 'b'
cmd = 'STOR'
cn = <ftputil.FTP instance at 0x7ff8c5d3add0>
count = 1
mode = 'wb'
rfn = 'home/!ENTRY-tbz'
self = None
Frame transfercmd in /usr/lib/python2.7/ftplib.py at line 376
cmd = 'STOR home/!ENTRY-tbz'
rest = None
self = <ftplib.FTP_TLS instance at 0x7ff8c5d4c878>
Frame ntransfercmd in /usr/lib/python2.7/ftplib.py at line 693
cmd = 'STOR home/!ENTRY-tbz'
rest = None
self = <ftplib.FTP_TLS instance at 0x7ff8c5d4c878>
Frame ntransfercmd in /usr/lib/python2.7/ftplib.py at line 352
cmd = 'STOR home/!ENTRY-tbz'
conn = <socket._socketobject object at 0x7ff8c5d2d2f0>
host = '192.110.0.54'
port = 64649
rest = None
self = <ftplib.FTP_TLS instance at 0x7ff8c5d4c878>
size = None
Frame sendcmd in /usr/lib/python2.7/ftplib.py at line 249
cmd = 'STOR home/!ENTRY-tbz'
self = <ftplib.FTP_TLS instance at 0x7ff8c5d4c878>
Frame getresp in /usr/lib/python2.7/ftplib.py at line 215
self = <ftplib.FTP_TLS instance at 0x7ff8c5d4c878>
Frame getmultiline in /usr/lib/python2.7/ftplib.py at line 201
self = <ftplib.FTP_TLS instance at 0x7ff8c5d4c878>
Frame getline in /usr/lib/python2.7/ftplib.py at line 186
self = <ftplib.FTP_TLS instance at 0x7ff8c5d4c878>
Frame readline in /usr/lib/python2.7/socket.py at line 478
buf = <cStringIO.StringO object at 0x7ff8c5d40298>
buf_len = 0
e = timeout()
self = <socket._fileobject object at 0x7ff8c7b75b50>
size = 8193
More information about the Python-list
mailing list