Path: csiph.com!news.mixmin.net!newsreader4.netcologne.de!news.netcologne.de!newsfeed.kamp.net!newsfeed.kamp.net!fu-berlin.de!uni-berlin.de!not-for-mail From: Antoon Pardon Newsgroups: comp.lang.python Subject: ftplib throws: IndexError: tuple index out of range Date: Sun, 14 Feb 2016 11:54:39 +0100 Lines: 129 Message-ID: Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Trace: news.uni-berlin.de BhhYh032VrL1C6BjRlW52QqzRz0oiD5PEsyfZQm32hwA== Return-Path: X-Original-To: python-list@python.org Delivered-To: python-list@mail.python.org X-Spam-Status: OK 0.000 X-Spam-Evidence: '*H*': 1.00; '*S*': 0.00; 'skip:[ 20': 0.03; 'resp': 0.07; 'true)': 0.07; '__init__': 0.09; 'aborted': 0.09; 'cmd': 0.09; 'e.args[0]': 0.09; 'ftplib': 0.09; 'mode,': 0.09; 'tuple': 0.09; 'index': 0.13; "skip:' 30": 0.15; "'b'": 0.16; '170,': 0.16; '201': 0.16; '478': 0.16; 'cmd,': 0.16; 'conn': 0.16; 'conn,': 0.16; 'eintr:': 0.16; 'frame,': 0.16; 'indexerror:': 0.16; 'innermost': 0.16; 'received:adsl-dyn.isp.belgacom.be': 0.16; 'received:io': 0.16; 'received:psf.io': 0.16; 'rest)': 0.16; 'socket.py': 0.16; 'skip:" 30': 0.20; 'skip:" 40': 0.20; '%s"': 0.22; '(most': 0.24; 'written': 0.24; 'header:User-Agent:1': 0.26; 'rest': 0.26; 'entries': 0.27; 'host': 0.28; "skip:' 10": 0.28; 'readline': 0.29; 'received:192.168.1.3': 0.29; 'skip:/ 40': 0.29; 'raise': 0.29; 'starts': 0.29; 'program,': 0.29; 'received:be': 0.30; 'entry': 0.31; 'skip:s 30': 0.31; 'anyone': 0.32; 'problem': 0.33; 'skip:/ 20': 0.33; 'traceback': 0.33; 'open': 0.33; "skip:' 20": 0.34; 'file': 0.34; 'path': 0.35; 'remote': 0.35; 'skip:p 30': 0.35; 'mode': 0.36; 'to:addr:python-list': 0.36; 'subject:: ': 0.37; 'self': 0.38; 'files': 0.38; 'received:192': 0.39; 'to:addr:python.org': 0.40; 'some': 0.40; 'backup': 0.66; '215': 0.84; '261': 0.84; 'locals': 0.84; 'received:195.238': 0.84; 'stamp': 0.91 X-Belgacom-Dynamic: yes X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A2CVAQCsW8BW/1KZhG0NUYQMbbokgWcZh0wTAQEBAQEBAYV1VTYCBRYLAgsDAgECAVUDCAK0LmeKFYQ0e4UWiC6DOYE6BYdIhw6II4E7hBSIBoFcSoxOhW+ITyIBhCNpigcBAQE User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Icedove/38.5.0 X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.21rc2 Precedence: list List-Id: General discussion list for the Python programming language List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Xref: csiph.com comp.lang.python:102910 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 = pn = 'rmtdump' process = 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 = ismount = last = 1455445804.979914 newfn = 'home/!2016-01-17@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@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 = mode = 'wb' self = Frame __init__ in /usr/local/lib/python-apps/rmtdump/ftputil.py at line 69 bound = True ch = 'b' cmd = 'STOR' cn = 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 = Frame ntransfercmd in /usr/lib/python2.7/ftplib.py at line 693 cmd = 'STOR home/!ENTRY-tbz' rest = None self = Frame ntransfercmd in /usr/lib/python2.7/ftplib.py at line 352 cmd = 'STOR home/!ENTRY-tbz' conn = host = '192.110.0.54' port = 64649 rest = None self = size = None Frame sendcmd in /usr/lib/python2.7/ftplib.py at line 249 cmd = 'STOR home/!ENTRY-tbz' self = Frame getresp in /usr/lib/python2.7/ftplib.py at line 215 self = Frame getmultiline in /usr/lib/python2.7/ftplib.py at line 201 self = Frame getline in /usr/lib/python2.7/ftplib.py at line 186 self = Frame readline in /usr/lib/python2.7/socket.py at line 478 buf = buf_len = 0 e = timeout() self = size = 8193