This is the default caching strategy for offsets in the file. It works by trying to retain a uniformly-distributed view on the file. To this end, if the cache grows too large, only every
nth value will be stored, where
n may vary over time to accommodate both smaller and larger files. It starts out with {@code 1}, so initially every value will be cached. If the cache grows too large,
n will simply be doubled, but is capped at 256. So even in the worst case (but assuming complete cache coverage) the farthest cached value is only 128 lines away.
Of course, this only works well if the file is accessed sequentially and the “key” indexes are eventually cached.
@author Johannes Rössel