Gnus development mailing list
 help / color / mirror / Atom feed
* Expiry and nnimap: ghost articles
@ 2001-09-26  0:17 Nevin Kapur
  2001-09-26  7:31 ` Simon Josefsson
  0 siblings, 1 reply; 14+ messages in thread
From: Nevin Kapur @ 2001-09-26  0:17 UTC (permalink / raw)


I recently switched to nnimap from nnml.

I have a custom expiry-target that decides where a message lands up
after it has expired. I have not changed this function since I
switched to nnimap and the behavior I describe is nnimap-specific.

Each time expiry happens and an article gets moved to one of my
nnfolder archive groups, some ghost messages appear in that group.
Here is the *Summary* buffer from one of them.

     12/31/99     [nobody              ] (none)
      Sep 15      [-> xxx xxxxxx       ] xxx@xx36216-x.xxxx1.xx.xxxx.xxx xxxx xxx xxxx

The ghost article looks like this with C-u g:

,----
| X-From-Line: nobody Tue Sep 25 17:35:00 2001
| Message-ID: <m3hetr3qez.fsf@totally-fudged-out-message-id>
| Lines: 0
| Xref: fermat.mts.jhu.edu Archive-2001-Sep:619
| X-Gnus-Article-Number: 619   Tue Sep 25 17:35:00 2001
`----

This behavior is repeatable. It also occurs when I move an
article from one imap group to another.

-- 
Nevin


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Expiry and nnimap: ghost articles
  2001-09-26  0:17 Expiry and nnimap: ghost articles Nevin Kapur
@ 2001-09-26  7:31 ` Simon Josefsson
  2001-09-26 16:56   ` Nevin Kapur
  0 siblings, 1 reply; 14+ messages in thread
From: Simon Josefsson @ 2001-09-26  7:31 UTC (permalink / raw)
  Cc: ding

On Tue, 25 Sep 2001, Nevin Kapur wrote:

> I have a custom expiry-target that decides where a message lands up
> after it has expired. I have not changed this function since I
> switched to nnimap and the behavior I describe is nnimap-specific.
>
> Each time expiry happens and an article gets moved to one of my
> nnfolder archive groups, some ghost messages appear in that group.
> Here is the *Summary* buffer from one of them.
>
>      12/31/99     [nobody              ] (none)
>       Sep 15      [-> xxx xxxxxx       ] xxx@xx36216-x.xxxx1.xx.xxxx.xxx xxxx xxx xxxx
>
> The ghost article looks like this with C-u g:
>
> ,----
> | X-From-Line: nobody Tue Sep 25 17:35:00 2001
> | Message-ID: <m3hetr3qez.fsf@totally-fudged-out-message-id>
> | Lines: 0
> | Xref: fermat.mts.jhu.edu Archive-2001-Sep:619
> | X-Gnus-Article-Number: 619   Tue Sep 25 17:35:00 2001
> `----
>
> This behavior is repeatable. It also occurs when I move an
> article from one imap group to another.

Frob `imap-log' and send the contents from the imap log buffer after
moving one article and entering the destination group and doing C-u g on
the article.  Thanks.



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Expiry and nnimap: ghost articles
  2001-09-26  7:31 ` Simon Josefsson
@ 2001-09-26 16:56   ` Nevin Kapur
  2001-09-26 17:56     ` Simon Josefsson
  0 siblings, 1 reply; 14+ messages in thread
From: Nevin Kapur @ 2001-09-26 16:56 UTC (permalink / raw)


Simon Josefsson <jas@extundo.com> writes:

> Frob `imap-log' and send the contents from the imap log buffer after
> moving one article and entering the destination group and doing C-u g on
> the article.  Thanks.

Simon, I am sending the imap log buffer to you by email.

-- 
Nevin


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Expiry and nnimap: ghost articles
  2001-09-26 16:56   ` Nevin Kapur
@ 2001-09-26 17:56     ` Simon Josefsson
  2001-09-26 21:10       ` Nevin Kapur
  0 siblings, 1 reply; 14+ messages in thread
From: Simon Josefsson @ 2001-09-26 17:56 UTC (permalink / raw)
  Cc: ding

Nevin Kapur <nevin@jhu.edu> writes:

>> Frob `imap-log' and send the contents from the imap log buffer after
>> moving one article and entering the destination group and doing C-u g on
>> the article.  Thanks.
>
> Simon, I am sending the imap log buffer to you by email.

Thanks, hopefully fixed.



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Expiry and nnimap: ghost articles
  2001-09-26 17:56     ` Simon Josefsson
@ 2001-09-26 21:10       ` Nevin Kapur
  2001-09-27  8:43         ` Simon Josefsson
  0 siblings, 1 reply; 14+ messages in thread
From: Nevin Kapur @ 2001-09-26 21:10 UTC (permalink / raw)


Simon Josefsson <jas@extundo.com> writes:

> Nevin Kapur <nevin@jhu.edu> writes:
>
>>> Frob `imap-log' and send the contents from the imap log buffer after
>>> moving one article and entering the destination group and doing C-u g on
>>> the article.  Thanks.
>>
>> Simon, I am sending the imap log buffer to you by email.
>
> Thanks, hopefully fixed.

Yes, looks good so far. Thanks much.

On a side note, I'm wondering why a copy of these articles that I am
moving is landing up in my nnfolder archive folders. Does the moving
code invoke nnmail-expiry-target somehow?

-- 
Nevin Kapur
nevin@jhu.edu 



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Expiry and nnimap: ghost articles
  2001-09-26 21:10       ` Nevin Kapur
@ 2001-09-27  8:43         ` Simon Josefsson
  2001-09-27 14:41           ` Nevin Kapur
  2001-09-27 15:54           ` Paul Jarc
  0 siblings, 2 replies; 14+ messages in thread
From: Simon Josefsson @ 2001-09-27  8:43 UTC (permalink / raw)
  Cc: ding

On Wed, 26 Sep 2001, Nevin Kapur wrote:

> On a side note, I'm wondering why a copy of these articles that I am
> moving is landing up in my nnfolder archive folders. Does the moving
> code invoke nnmail-expiry-target somehow?

Yes, since nnimap doesn't support `nnchoke-request-move-article' (it is
impossible to implement in IMAP) Gnus does retrieve+delete instead, and
the delete code move things into the expiry-target.  I'm not sure if there
is a clean way to solve this..




^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Expiry and nnimap: ghost articles
  2001-09-27  8:43         ` Simon Josefsson
@ 2001-09-27 14:41           ` Nevin Kapur
  2001-09-27 15:54           ` Paul Jarc
  1 sibling, 0 replies; 14+ messages in thread
From: Nevin Kapur @ 2001-09-27 14:41 UTC (permalink / raw)


Simon Josefsson <jas@extundo.com> writes:

> On Wed, 26 Sep 2001, Nevin Kapur wrote:
>
>> On a side note, I'm wondering why a copy of these articles that I am
>> moving is landing up in my nnfolder archive folders. Does the moving
>> code invoke nnmail-expiry-target somehow?
>
> Yes, since nnimap doesn't support `nnchoke-request-move-article' (it is
> impossible to implement in IMAP) Gnus does retrieve+delete instead, and
> the delete code move things into the expiry-target.  I'm not sure if there
> is a clean way to solve this..

Ok. That's good to know. Thanks for your quick fixes.

-- 
Nevin



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Expiry and nnimap: ghost articles
  2001-09-27  8:43         ` Simon Josefsson
  2001-09-27 14:41           ` Nevin Kapur
@ 2001-09-27 15:54           ` Paul Jarc
  2001-09-27 21:36             ` Simon Josefsson
  1 sibling, 1 reply; 14+ messages in thread
From: Paul Jarc @ 2001-09-27 15:54 UTC (permalink / raw)


Simon Josefsson <jas@extundo.com> wrote:
> Yes, since nnimap doesn't support `nnchoke-request-move-article' (it is
> impossible to implement in IMAP) Gnus does retrieve+delete instead, and
> the delete code move things into the expiry-target.

Couldn't nnimap just do the retrieve+delete within
-request-move-article?  That's pretty much what other backends do,
right?


paul



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Expiry and nnimap: ghost articles
  2001-09-27 15:54           ` Paul Jarc
@ 2001-09-27 21:36             ` Simon Josefsson
  2001-09-28 12:47               ` Kai Großjohann
                                 ` (3 more replies)
  0 siblings, 4 replies; 14+ messages in thread
From: Simon Josefsson @ 2001-09-27 21:36 UTC (permalink / raw)


prj@po.cwru.edu (Paul Jarc) writes:

> Simon Josefsson <jas@extundo.com> wrote:
> > Yes, since nnimap doesn't support `nnchoke-request-move-article' (it is
>> impossible to implement in IMAP) Gnus does retrieve+delete instead, and
>> the delete code move things into the expiry-target.
>
> Couldn't nnimap just do the retrieve+delete within
> -request-move-article?

Um, yes, now that I look at it, this is how it is done. :-) I was
thinking of `nnchoke-request-replace-article'...

Then I wonder why this happens.  Ah, yes -- if you move an article
from a nnimap group to a nnfolder group (which was the case in this
thread), moving doesn't happen within one backend, so Gnus does
retrieve+delete.  And nnimap can't know this case from the case where
articles are simply expired.  Neither could nnml or nnfolder, so I
guess this is a generic problem.




^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Expiry and nnimap: ghost articles
  2001-09-27 21:36             ` Simon Josefsson
@ 2001-09-28 12:47               ` Kai Großjohann
  2001-09-28 14:32               ` Nevin Kapur
                                 ` (2 subsequent siblings)
  3 siblings, 0 replies; 14+ messages in thread
From: Kai Großjohann @ 2001-09-28 12:47 UTC (permalink / raw)


Simon Josefsson <jas@extundo.com> writes:

> Then I wonder why this happens.  Ah, yes -- if you move an article
> from a nnimap group to a nnfolder group (which was the case in this
> thread), moving doesn't happen within one backend, so Gnus does
> retrieve+delete.  And nnimap can't know this case from the case where
> articles are simply expired.  Neither could nnml or nnfolder, so I
> guess this is a generic problem.

I thought gnus-summary-move-article calls gnus-request-move-article
which calls nnchoke-request-move-article?  And
nnchoke-request-move-article is supposed to call
nnbloke-request-accept-article for the target server/group.

Or did I miss something in the code?

kai
-- 
Abort this operation?   [OK]  [Cancel]



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Expiry and nnimap: ghost articles
  2001-09-27 21:36             ` Simon Josefsson
  2001-09-28 12:47               ` Kai Großjohann
@ 2001-09-28 14:32               ` Nevin Kapur
  2001-10-01 20:37               ` Paul Jarc
  2001-10-02 17:46               ` Paul Jarc
  3 siblings, 0 replies; 14+ messages in thread
From: Nevin Kapur @ 2001-09-28 14:32 UTC (permalink / raw)


[ expiry-target comes into play when moving articles from an nnimap
  group ]

Simon Josefsson <jas@extundo.com> writes:

> Then I wonder why this happens.  Ah, yes -- if you move an article
> from a nnimap group to a nnfolder group (which was the case in this
> thread), 

Actually, I see the behavior even when moving an article from one
nnimap group to another, i.e., if I 'B m' an article, a copy of it
gets placed in my archive group.

-- 
Nevin



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Expiry and nnimap: ghost articles
  2001-09-27 21:36             ` Simon Josefsson
  2001-09-28 12:47               ` Kai Großjohann
  2001-09-28 14:32               ` Nevin Kapur
@ 2001-10-01 20:37               ` Paul Jarc
  2001-10-02 17:50                 ` Simon Josefsson
  2001-10-02 17:46               ` Paul Jarc
  3 siblings, 1 reply; 14+ messages in thread
From: Paul Jarc @ 2001-10-01 20:37 UTC (permalink / raw)


Simon Josefsson <jas@extundo.com> wrote:
> Ah, yes -- if you move an article from a nnimap group to a nnfolder
> group (which was the case in this thread), moving doesn't happen
> within one backend, so Gnus does retrieve+delete.

Why doesn't Gnus just put nnfolder-request-accept article into the
form it passes to nnimap-request-move-article?  The interface seems
specifically designed to accomodate moving between backends; hasn't it
been mentioned before that the *lack* of any backend interface
function to shuffle articles on a single server makes some
optimizations harder?


paul



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Expiry and nnimap: ghost articles
  2001-09-27 21:36             ` Simon Josefsson
                                 ` (2 preceding siblings ...)
  2001-10-01 20:37               ` Paul Jarc
@ 2001-10-02 17:46               ` Paul Jarc
  3 siblings, 0 replies; 14+ messages in thread
From: Paul Jarc @ 2001-10-02 17:46 UTC (permalink / raw)


Simon Josefsson <jas@extundo.com> wrote:
> Ah, yes -- if you move an article from a nnimap group to a nnfolder
> group (which was the case in this thread), moving doesn't happen
> within one backend, so Gnus does retrieve+delete.

Thinking more on this - even if Gnus does retrieve+delete, it could
(and ought to) use nnchoke-request-move-article to do it.  Using
nnchoke-request-article is wrong, since it doesn't undo any changes
made by the backend, and using nnchoke-request-expire-articles is
wrong as has already been mentioned.

To retrieve with n-r-m-a, just pass nil as the accept-form; the
article will then be in the given buffer.  To delete with n-r-m-a,
pass t as the accept-form.  (Passing the destination backend's
-request-accept article would be even better, but might be a harder
change to make.)


paul



^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: Expiry and nnimap: ghost articles
  2001-10-01 20:37               ` Paul Jarc
@ 2001-10-02 17:50                 ` Simon Josefsson
  0 siblings, 0 replies; 14+ messages in thread
From: Simon Josefsson @ 2001-10-02 17:50 UTC (permalink / raw)


prj@po.cwru.edu (Paul Jarc) writes:

> Simon Josefsson <jas@extundo.com> wrote:
>> Ah, yes -- if you move an article from a nnimap group to a nnfolder
>> group (which was the case in this thread), moving doesn't happen
>> within one backend, so Gnus does retrieve+delete.
> 
> Why doesn't Gnus just put nnfolder-request-accept article into the
> form it passes to nnimap-request-move-article?  The interface seems
> specifically designed to accomodate moving between backends; hasn't it
> been mentioned before that the *lack* of any backend interface
> function to shuffle articles on a single server makes some
> optimizations harder?

You are right, I was hallucinating -- it was a bug in nnimap.  Moving
articles from nnimap groups shouldn't place a copy in the
expiry-target now.  Thanks for getting this straight.




^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2001-10-02 17:50 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-09-26  0:17 Expiry and nnimap: ghost articles Nevin Kapur
2001-09-26  7:31 ` Simon Josefsson
2001-09-26 16:56   ` Nevin Kapur
2001-09-26 17:56     ` Simon Josefsson
2001-09-26 21:10       ` Nevin Kapur
2001-09-27  8:43         ` Simon Josefsson
2001-09-27 14:41           ` Nevin Kapur
2001-09-27 15:54           ` Paul Jarc
2001-09-27 21:36             ` Simon Josefsson
2001-09-28 12:47               ` Kai Großjohann
2001-09-28 14:32               ` Nevin Kapur
2001-10-01 20:37               ` Paul Jarc
2001-10-02 17:50                 ` Simon Josefsson
2001-10-02 17:46               ` Paul Jarc

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).