gnus: Duplicate Suppression

 
 3.30 Duplicate Suppression
 ==========================
 
 By default, Gnus tries to make sure that you don’t have to read the same
 article more than once by utilizing the crossposting mechanism (See
 Crosspost Handling).  However, that simple and efficient approach may
 not work satisfactory for some users for various reasons.
 
   1. The NNTP server may fail to generate the ‘Xref’ header.  This is
      evil and not very common.
 
   2. The NNTP server may fail to include the ‘Xref’ header in the
      ‘.overview’ data bases.  This is evil and all too common, alas.
 
   3. You may be reading the same group (or several related groups) from
      different NNTP servers.
 
   4. You may be getting mail that duplicates articles posted to groups.
 
    I’m sure there are other situations where ‘Xref’ handling fails as
 well, but these four are the most common situations.
 
    If, and only if, ‘Xref’ handling fails for you, then you may consider
 switching on “duplicate suppression”.  If you do so, Gnus will remember
 the ‘Message-ID’s of all articles you have read or otherwise marked as
 read, and then, as if by magic, mark them as read all subsequent times
 you see them—in _all_ groups.  Using this mechanism is quite likely to
 be somewhat inefficient, but not overly so.  It’s certainly preferable
 to reading the same articles more than once.
 
    Duplicate suppression is not a very subtle instrument.  It’s more
 like a sledge hammer than anything else.  It works in a very simple
 fashion—if you have marked an article as read, it adds this Message-ID
 to a cache.  The next time it sees this Message-ID, it will mark the
 article as read with the ‘M’ mark.  It doesn’t care what group it saw
 the article in.
 
 ‘gnus-suppress-duplicates’
      If non-‘nil’, suppress duplicates.
 
 ‘gnus-save-duplicate-list’
      If non-‘nil’, save the list of duplicates to a file.  This will
      make startup and shutdown take longer, so the default is ‘nil’.
      However, this means that only duplicate articles read in a single
      Gnus session are suppressed.
 
 ‘gnus-duplicate-list-length’
      This variable says how many ‘Message-ID’s to keep in the duplicate
      suppression list.  The default is 10000.
 
 ‘gnus-duplicate-file’
      The name of the file to store the duplicate suppression list in.
      The default is ‘~/News/suppression’.
 
    If you have a tendency to stop and start Gnus often, setting
 ‘gnus-save-duplicate-list’ to ‘t’ is probably a good idea.  If you leave
 Gnus running for weeks on end, you may have it ‘nil’.  On the other
 hand, saving the list makes startup and shutdown much slower, so that
 means that if you stop and start Gnus often, you should set
 ‘gnus-save-duplicate-list’ to ‘nil’.  Uhm.  I’ll leave this up to you to
 figure out, I think.