> On Sep 3, 2015, at 7:55 AM, Wang Yan <[email protected]> wrote:
>
> Hi,
>
> I've installed Twisted 15.3.0 on Ubuntu 14.04LTS. Excellent work but there's
> one problem bothering me for a long time:
> twisted.mail.imap4.IMAP4Client.fetchMessage always throws exception and the
> exception occured at random, e.g. somtimes the exception occured when the
> program read the 120th mail, sometimes it occured at the 150th or 200th mail.
> The traceback of the exception is as follows:
>
> Unhandled Error
> Traceback (most recent call last):
> File
> "/usr/local/lib/python2.7/dist-packages/Twisted-15.3.0-py2.7-linux-i686.egg/twisted/python/log.py",
> line 101, in callWithLogger
> return callWithContext({"system": lp}, func, *args, **kw)
> File
> "/usr/local/lib/python2.7/dist-packages/Twisted-15.3.0-py2.7-linux-i686.egg/twisted/python/log.py",
> line 84, in callWithContext
> return context.call({ILogContext: newCtx}, func, *args, **kw)
> File
> "/usr/local/lib/python2.7/dist-packages/Twisted-15.3.0-py2.7-linux-i686.egg/twisted/python/context.py",
> line 118, in callWithContext
> return self.currentContext().callWithContext(ctx, func, *args, **kw)
> File
> "/usr/local/lib/python2.7/dist-packages/Twisted-15.3.0-py2.7-linux-i686.egg/twisted/python/context.py",
> line 81, in callWithContext
> return func(*args,**kw)
> --- <exception caught here> ---
> File
> "/usr/local/lib/python2.7/dist-packages/Twisted-15.3.0-py2.7-linux-i686.egg/twisted/internet/posixbase.py",
> line 597, in _doReadOrWrite
> why = selectable.doRead()
> File
> "/usr/local/lib/python2.7/dist-packages/Twisted-15.3.0-py2.7-linux-i686.egg/twisted/internet/tcp.py",
> line 209, in doRead
> return self._dataReceived(data)
> File
> "/usr/local/lib/python2.7/dist-packages/Twisted-15.3.0-py2.7-linux-i686.egg/twisted/internet/tcp.py",
> line 215, in _dataReceived
> rval = self.protocol.dataReceived(data)
> File
> "/usr/local/lib/python2.7/dist-packages/Twisted-15.3.0-py2.7-linux-i686.egg/twisted/protocols/basic.py",
> line 571, in dataReceived
> why = self.lineReceived(line)
> File
> "/usr/local/lib/python2.7/dist-packages/Twisted-15.3.0-py2.7-linux-i686.egg/twisted/mail/imap4.py",
> line 2356, in lineReceived
> self._regularDispatch(line)
> File
> "/usr/local/lib/python2.7/dist-packages/Twisted-15.3.0-py2.7-linux-i686.egg/twisted/mail/imap4.py",
> line 2383, in _regularDispatch
> tag, rest = parts
> exceptions.ValueError: need more than 1 value to unpack
>
> My code is as simple as possible and the exception is thrown by the following
> codes:
>
> dlist = []
> for msg in messages: # use message number, not UID
> d = self.fetchMessage(msg, uid=False)
> d.addCallback(cbGetAttachment)
> dlist.append(d)
> dl = defer.DeferredList(dlist)
> return dl.addCallback(cbLogout)
>
> Is there anybody know about this issue?
Hi Wang,
Sorry it took some time to get back to you. What kind of mail server are you
talking to? This looks like a protocol error - perhaps a bug in the server
you're talking to, perhaps a bug in Twisted's handling of a valid response -
but it's hard to say more without looking at the traffic and the intended
behavior. (I am no longer well-versed enough in the IMAP protocol to guess
what is going on at a glance). Is there any chance you have ever managed to
reproduce this on a small set of data?
-glyph
_______________________________________________
Twisted-Python mailing list
[email protected]
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python