Gnus development mailing list
 help / color / mirror / Atom feed
From: Simon Josefsson <jas@extundo.com>
Subject: Re: IMAP article move
Date: Tue, 09 Nov 2004 23:06:22 +0100	[thread overview]
Message-ID: <iluu0rysmn5.fsf@latte.josefsson.org> (raw)
In-Reply-To: <4nu0ryd6oj.fsf@lifelogs.com>

"Ted Zlatanov" <tzz@lifelogs.com> writes:

> On Mon, 08 Nov 2004, jas@extundo.com wrote:
>
>> What are you proposing?  There is some optimization in
>> nnimap-request-move-article and nnimap-request-accept-article to make
>> moving more efficient, and I thought it was pretty fast.  But I rarely
>> copy/move articles, so I wouldn't know.  Maybe you could illustrate by
>> comparing which IMAP commands are sent now, and which commands you
>> want to be sent?
>
> I apologize.  Reading the source code, I thought that the IMAP COPY
> (imap-message-copy) was not used, but it is.  There does seem to be an
> unnecessary full-body FETCH before the COPY, though, which is what
> slows things down (I think).  I just entered the group and did a `B m'
> command, and the log showed that the article was fetched in its full
> glory before it was moved.
>
> I think this is something that Gnus does for every backend when
> moving, because it's needed in some cases (where you don't do the
> internal backend move but a fetch+store instead).  So the extra fetch
> just needs to be eliminated when moving within the same IMAP server.
>
> nnml and nnmaildir could probably benefit from the same optimization,
> if they do a file move internally as well.

I agree.  The problem is that nnimap-request-move-article doesn't know
what the article will be used for, so it doesn't know whether to
optimize away the FETCH or not.

One kludge is to make B m bind a variable, say
gnus-move-destination-group, that nnimap-request-move-article could
look at, and if set it could simply refuse to return the article data,
but perform the article move directly, to the g-m-d-g group.

Hopefully there are cleaner solutions as well...




  reply	other threads:[~2004-11-09 22:06 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-11-08 19:19 Ted Zlatanov
2004-11-08 20:50 ` Raymond Scholz
2004-11-08 21:15 ` Simon Josefsson
2004-11-09 22:00   ` Ted Zlatanov
2004-11-09 22:06     ` Simon Josefsson [this message]
2005-02-25 19:59       ` IMAP article move optimization! (was: IMAP article move) Ted Zlatanov
2005-02-28  0:00         ` IMAP article move optimization! Katsumi Yamaoka
2005-02-28 15:11           ` Ted Zlatanov
2005-03-01  0:37             ` Katsumi Yamaoka
2005-03-01 16:26               ` Ted Zlatanov
2005-03-01 16:51                 ` Simon Josefsson
2005-03-03 18:04                   ` Ted Zlatanov
2005-03-02  0:39                 ` Katsumi Yamaoka
2005-01-10 19:41   ` IMAP article move David Abrahams
2005-02-25 20:04     ` Ted Zlatanov
2005-03-03 18:05       ` Ted Zlatanov
2005-03-03 19:09         ` David Abrahams
2005-03-04 16:10           ` Ted Zlatanov
2005-03-21  9:32         ` David Abrahams
2005-03-22 19:14           ` Ted Zlatanov
2005-03-22 22:09             ` Simon Josefsson
2005-03-23 19:46               ` Ted Zlatanov
2005-01-11  9:16   ` Bjørn Mork

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=iluu0rysmn5.fsf@latte.josefsson.org \
    --to=jas@extundo.com \
    /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).