[NNTP] 64-bit article counter extension strawman

Matthias Andree matthias.andree at gmx.de
Tue Jul 19 15:19:26 PDT 2005


"Charles Lindsey" <chl at clerew.man.ac.uk> writes:

> And I think exactly the opposite. It is ridiculous using huge numbers
> (approaching 64 bits) to identify articles in a group where the maximum
> number of articles actually existing at any one time is unlikely to exceed
> 100,000, and probably nowhere near that.

More like a million in groups that have been in existence for several
years and have constantly been carrying high traffic volumes. As I'm
typing this, I'm offline so I cannot check the de.rec.fotografie
counters, but the group has certainly seen much more than 100,000 posts
so far.

> So we should look at wrap-around solutions (several variants have been
> mentioned). What are the problems? Special meanings for zero, and several
> ways of detecting whether a group is empty. Is that it?

Wrap-around is just nonsense and should be expressly forbidden, with a
"MUST" (or MUST NOT, as appropriate).

It causes an enormous complexity for getting all the tiny implementation
details right, and it requires carrying around lot of code for a special
case.  While the same argument can be mounted against a 31->64-bit
switchover when we're in fact using, say, 20 bits, the 64-bit code
requires no changes to the logic, no adding ifs and buts to detect
wrap-around, unwrap, and all that.

In the easiest case, the article number is implemented as a type or
class in its own right and a programmer just picking a wider type is
done with the job.

> If that is so, then we should be exploring whichever wrap-around scheme
> will cause least disruption to introduce.

That scheme would be "no wrap-around allowed", and I am serious about
this, no matter how much advance warning you give.

-- 
Matthias Andree



More information about the ietf-nntp mailing list