Views with recursion disabled should not use "max-cache-size 90%;" by default
Views (including the built-in ones) which do not have max-cache-size
explicitly set inherit the implicit global default, i.e. max-cache-size 90%;
. For views which do not allow recursion, this causes memory to be
needlessly preallocated for cache RBT hash tables associated with such
views.
The amount of memory preallocated for each cache RBT hash table (about
0.2% of the effective max-cache-size
value) is not significant enough
to cause operational issues, but it can still raise an eyebrow on
servers with large amounts of RAM: named
running with the default
configuration on a 64-bit host with 32 GB of RAM will preallocate about
128 MB of memory just for the cache RBT hash tables for the two built-in
views (_default
and _bind
). Each configured view on top of that
makes the issue more and more apparent.
This was noticed while discussing #2279 (closed)/!5173 (merged).