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