pan-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Pan-users] Re: Does "Mark selected groups read" mark by possession or b


From: Duncan
Subject: [Pan-users] Re: Does "Mark selected groups read" mark by possession or by time?
Date: Sat, 20 Dec 2008 02:11:06 +0000 (UTC)
User-agent: Pan/0.133 (House of Butterflies)

PsiStormYamato <address@hidden>
posted address@hidden, excerpted below, on  Fri, 19 Dec 2008
20:22:09 -0500:

> I was wondering if using the "Mark selected groups read" function will
> only mark all headers for that group that have been downloaded, or does
> it also mark all headers as read even if they have not been downloaded
> yet?
> 
> I have been using this function as a quick way of marking all downloaded
> headers as "read", but I don't want to use it if it will cause me to
> miss any posts that have been posted in between the time that I
> downloaded the headers and the time that I marked the group as read.

There's a problem with that function (on some servers), but it's not as 
you describe, it's different.

To directly address your question, no, pan doesn't go out and grab new 
info when you use mark as read, so it's acting on the info as of the last 
time you downloaded headers.  You're safe on that count.

HOWEVER, the problem is in how the NNTP protocol works, the assumptions 
pan makes as a result, and the invalidity of those assumptions on certain 
servers.  Here, you may or may not be safe using the function, depending 
on your server.

The detail is as follows.  When pan switches to a specific group on the 
server (NOT locally, tho the two may be synchronized if you have the 
appropriate download headers when switching to a group checkbox checked 
in preferences), the server returns three numbers, known as as the low 
water mark, the high water mark, and an ESTIMATE of the number of 
articles available.  The low and high water marks are simply the sequence 
numbers of the lowest numbered article (assumed earliest) and the highest 
numbered article (assumed latest) on the server,  (According to the 
official RFCs, the estimate may be greater than the number of actual 
articles available, but may not be less than the number of actual 
articles available.)

The assumption is that the sequence numbers are indeed issued in order, 
that the high water mark is indeed the latest article, and that as a 
result, no future articles not yet seen will have an article number below 
that of the current high water mark.  (Note that there's no assumption of 
a 1:1 correspondence, that every article number corresponds to a valid 
article.  Article number holes may be due to spam filters removing 
articles after they are numbered, etc.)

What "mark selected groups as read" does is mark everything before the 
high water mark in each selected group as read.  This is perfectly fine 
as long as the above assumption remains valid, that no new articles 
appear with a lower number than the current high water mark.  The problem 
is that for efficiency and multiple server number synchronization 
reasons, among others, not all servers exhibit behavior that necessarily 
match that assumption.  The general article number trend is upward, but 
it's entirely possible, even likely, that some few new articles not yet 
seen will have article sequence numbers below the current high water mark.

It's thus not advised to use the "mark selected groups read" function 
unless you are either (1) on servers with behavior known to match this 
assumption, or (2) in a situation where you don't particularly care about 
missing an occasional article.  The latter might be the case after coming 
back from vacation, perhaps, on busy groups where you just want to "catch 
up", and where missing the random article in doing is judged less of a 
problem than the hassle of dealing with every single individual article.  
This will NOT be the case and it's therefore unadvised to use this 
function, if you cannot be sure condition one above is valid and you want 
to see (or at least for pan's scoring to see) every single post that 
appears in the selected groups.

The alternative I use instead is to select-all-articles, then mark 
selected as read.  Note that if scoring has hidden some articles, they 
will not be marked as read using this method, unless they are visible and 
thus selected by the select-all-articles.  The solution to that is to 
either temporarily or permanently set the view options to display all 
score categories, /then/ use the select-all-articles and mark as read.  
Here, I just display them all, all the time, set score as one of the 
viewed columns in the article list pane, and use the score-match color-
coding options (in preferences) to hilite the ignored and negative scored 
articles so I can deal with them as appropriate.  Some day, we'll 
probably get an option to auto-mark-read or delete based on score, along 
with an option to auto-download.  Unfortunately, that day has yet to 
come, unless you use old (< 0.90, pre C++ rewrite) pan, which had serious 
scalability problems in large (>100K articles) groups (generally busy 
binary groups on semi-decent or better servers).

-- 
Duncan - List replies preferred.   No HTML msgs.
"Every nonfree program has a lord, a master --
and if you use the program, he is your master."  Richard Stallman





reply via email to

[Prev in Thread] Current Thread [Next in Thread]