From: James Cloos <cloos@jhcloos.com>
To: ding@gnus.org
Subject: Re: fast list
Date: Mon, 18 Oct 2010 19:17:09 -0400 [thread overview]
Message-ID: <m362wzhz02.fsf@carbon.jhcloos.org> (raw)
In-Reply-To: <m3r5fn8b8r.fsf@quimbies.gnus.org> (Lars Magne Ingebrigtsen's message of "Mon, 18 Oct 2010 23:03:16 +0200")
>>>>> "LMI" == Lars Magne Ingebrigtsen <larsi@gnus.org> writes:
LMI> Well, if you issue FETCH FLAGS, then you have to issue EXAMINE, too.
LMI> Returning the FLAGS for all the groups will be so much data that's it's
LMI> not generally useful.
Why not? It is what gnus does now, just one group at a time instead of
all in one go.
LMI> However, a global QRESYNC would be excellent. QRESYNC works by
LMI> outputting all the flags that have changed since <SEQUENCE>. So if
LMI> you said
LMI> LIST "" "%" RETURN (STATUS QRESYNC 43488328)
LMI> (or something) to return all the changed flags since that sequence
LMI> number, that would allow a really fast and comprehensive
LMI> server->client flag sync-up.
True, but adding QRESYNC requires adding CONDSTORE, and the latter is a
big project. I'd expect several days to get it right.
LMI> Have a look at RFC5162 for the QRESYNC description, but there it's only
LMI> a parameter to EXAMINE/SELECT, so you still need to EXAMINE all the mail
LMI> boxes, annoyingly enough.
Yeah, we'd need to do an i-d to register another extended list option.
LMI> But here's a thought: nnimap could have a "sloppy" mode. In the sloppy
LMI> mode, it doesn't care about syncing flags that comprehensively, and
LMI> instead deferring that to when you enter the group. The sloppy mode
LMI> could work with the LIST RETURN command, for instance, or an EXAMINE run
LMI> (with no FETCH FLAGS). It would just look at UNSEEN and UIDNEXT, and
LMI> just say "if UNSEEN is 5, and UIDNEXT is 242, then we say that all
LMI> messages between 1-236 are read, and the last five are unread". When
LMI> the group is entered, it issues a "FETCH FLAGS" and gets things right.
LMI> But this could be result in pretty brittle behaviour if everything isn't
LMI> done just right...
That would be closer to the way other clients tend to work, I'd imagine.
If it did that for startup and g, then M-g could continue to work like now.
The equivilent of UID FETCH FLAGS for every group, if done as a single
command, takes about one or two seconds, vs 20 minutes iterating through
one group at a time. I am eager to fix that.
-JimC
--
James Cloos <cloos@jhcloos.com> OpenPGP: 1024D/ED7DAEA6
next prev parent reply other threads:[~2010-10-18 23:17 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-10-17 5:15 James Cloos
2010-10-17 22:02 ` Lars Magne Ingebrigtsen
2010-10-17 22:58 ` James Cloos
2010-10-18 19:10 ` Lars Magne Ingebrigtsen
2010-10-18 20:49 ` James Cloos
2010-10-18 21:03 ` Lars Magne Ingebrigtsen
2010-10-18 23:17 ` James Cloos [this message]
2010-10-18 23:38 ` Lars Magne Ingebrigtsen
2010-10-19 16:00 ` James Cloos
2010-10-19 16:13 ` Steinar Bang
2010-10-19 18:12 ` Lars Magne Ingebrigtsen
2010-10-19 20:56 ` James Cloos
2010-10-19 18:12 ` Lars Magne Ingebrigtsen
2010-10-19 21:05 ` James Cloos
2010-10-20 0:07 ` Lars Magne Ingebrigtsen
2010-10-20 18:47 ` James Cloos
2010-10-21 15:59 ` Lars Magne Ingebrigtsen
2010-10-21 19:13 ` James Cloos
2010-10-22 14:51 ` Lars Magne Ingebrigtsen
2010-10-19 5:58 ` Steinar Bang
2010-10-19 18:11 ` Lars Magne Ingebrigtsen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=m362wzhz02.fsf@carbon.jhcloos.org \
--to=cloos@jhcloos.com \
--cc=ding@gnus.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).