missing cache expiration test
While examining differences between the 9.11 and 9.11 subscription branches I noticed an unexpected change in
rbtdb.c:expirenode() - the
force_expire variable was set to
true in one and
false in the other. This bug was introduced when we changed the boolean constants from
false. In the subscription branch, an
ISC_FALSE was changed to
true by mistake.
I'm not certain what the effects of this were, but based on the names, I would guess that cache nodes were probably forced to expire in some cases when they shouldn't have been, perhaps leading to more recursion than would otherwise have been necessary.
It's disappointing that no unit or system test noticed the change, and we should consider writing one that would.