From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/71847 Path: news.gmane.org!not-for-mail From: Simon Josefsson Newsgroups: gmane.emacs.gnus.general Subject: nnimap issues Date: Sun, 26 Sep 2010 12:55:49 +0200 Message-ID: <878w2olqoa.fsf@mocca.josefsson.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: dough.gmane.org 1285516574 19966 80.91.229.12 (26 Sep 2010 15:56:14 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Sun, 26 Sep 2010 15:56:14 +0000 (UTC) To: ding@gnus.org Original-X-From: ding-owner+M20220@lists.math.uh.edu Sun Sep 26 17:56:13 2010 Return-path: Envelope-to: ding-account@gmane.org Original-Received: from util0.math.uh.edu ([129.7.128.18]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1OztaA-0001I8-4x for ding-account@gmane.org; Sun, 26 Sep 2010 17:56:06 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.math.uh.edu) by util0.math.uh.edu with smtp (Exim 4.63) (envelope-from ) id 1Ozta7-0007ID-RT; Sun, 26 Sep 2010 10:56:03 -0500 Original-Received: from mx2.math.uh.edu ([129.7.128.33]) by util0.math.uh.edu with esmtps (TLSv1:AES256-SHA:256) (Exim 4.63) (envelope-from ) id 1Ozou7-0005A2-SY for ding@lists.math.uh.edu; Sun, 26 Sep 2010 05:56:23 -0500 Original-Received: from quimby.gnus.org ([80.91.231.51]) by mx2.math.uh.edu with esmtp (Exim 4.72) (envelope-from ) id 1Ozou5-0005z5-3g for ding@lists.math.uh.edu; Sun, 26 Sep 2010 05:56:23 -0500 Original-Received: from yxa-v.extundo.com ([83.241.177.39]) by quimby.gnus.org with esmtp (Exim 3.36 #1 (Debian)) id 1Ozou3-0004M5-00 for ; Sun, 26 Sep 2010 12:56:19 +0200 Original-Received: from mocca (c80-216-27-64.bredband.comhem.se [80.216.27.64]) (authenticated bits=0) by yxa-v.extundo.com (8.14.3/8.14.3/Debian-5+lenny1) with ESMTP id o8QAtpxh025168 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT) for ; Sun, 26 Sep 2010 12:56:03 +0200 X-Hashcash: 1:22:100926:ding@gnus.org::hlaEoBEr9YErlta+:S13 OpenPGP: id=B565716F; url=http://josefsson.org/key.txt Mail-Copies-To: nobody User-Agent: Gnus/5.110011 (No Gnus v0.11) Emacs/23.2 (gnu/linux) X-Spam-Status: No, score=-0.8 required=5.0 tests=AWL,BAYES_00, DATE_IN_FUTURE_96_XX,RDNS_DYNAMIC,SPF_FAIL autolearn=no version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on yxa-v.extundo.com X-Virus-Scanned: clamav-milter 0.96.1 at yxa-v X-Virus-Status: Clean X-Spam-Score: -0.9 (/) List-ID: Precedence: bulk Xref: news.gmane.org gmane.emacs.gnus.general:71847 Archived-At: Hi! I just downloaded the latest Gnus and it found the new nnimap stuff (thanks for working on that!) and I noticed some issues: 1) Getting new mail is really really slow! Looking at *imap-log* explains why, there are tons of commands like this: ... 09:27:32 1706 EXAMINE "INBOX.grisslan" 09:27:32 1707 UID FETCH 1:* FLAGS 09:27:32 1708 EXAMINE "INBOX.mail-bounce" 09:27:32 1709 UID FETCH 1935:* FLAGS 09:27:32 1710 EXAMINE "INBOX.spamassassin" 09:27:32 1711 UID FETCH 180267:* FLAGS 09:27:32 1712 EXAMINE "INBOX.2009" 09:27:32 1713 UID FETCH 30541:* FLAGS 09:27:32 1714 EXAMINE "INBOX.sent-2009" 09:27:32 1715 UID FETCH 1763:* FLAGS ... The 'UID FETCH 1:*' command is an O(n) operation (both in terms of computation on client and server side but also on bandwidth) on the size of the mailbox, and for large mailboxes this becomes really painful. It can results in MB's of data being pushed every time I press 'g'. The old nnimap used the STATUS command to look for new mail instead. There are controversies over whether this is a good idea or not, but older IMAP RFCs support it and as far as I know, it is the fastest and most reliable way to check for new mail. Alternatively, doing a 'UID FETCH 1,*' should be an O(1) operation. Generally, why is it downloading all the flags on all messages over and over again? It should have all that cached anyway, except for possibly new messages. 2) Nnimap no longer auto-discover that my server supports STARTTLS and instead tried to use direct TLS, which obviously fails since my IMAP server doesn't speak native TLS on the vanilla IMAP port. I had to add 'nnimap-stream starttls' to my select method manually. STARTTLS is the recommended way to do TLS with IMAP so it would be nice to make this work automatically. 3) When imap-log is non-nil, the *imap-log* buffer no longer contains the output from the server, which makes debugging harder. 4) Nnimap mail splitting is not working any more. All my e-mail sits in INBOX and there is no filtering going on. I don't see anything in GNUS-NEWS about any change in this area, so it must be a bug. :-) 5) Selecting a IMAP group results in two SELECT operations? From *imap-log*: 09:34:53 2012 SELECT "INBOX.yxa-staff" 09:34:54 2013 SELECT "INBOX.yxa-staff" 09:34:54 2014 UID FETCH 6309:6315 (UID RFC822.SIZE BODYSTRUCTURE BODY.PEEK[HEADER.FIELDS (Subject From Date Message-Id References In-Reply-To Xref To Newsgroups)]) 09:34:56 2015 UID FETCH 6309 BODY.PEEK[] 6) Deleting messages doesn't compress the article list, which for large operations may result in too long lines: 09:35:05 2016 UID STORE 6309,6310,6311,6312,6313,6314,6315 +FLAGS.SILENT (\Deleted) 09:35:06 2017 UID EXPUNGE 6309,6310,6311,6312,6313,6314,6315 09:35:08 2018 UID STORE 6309:6315 +FLAGS.SILENT (\Seen) Thanks, /Simon