diff --git a/lib/dns/rbtdb.c b/lib/dns/rbtdb.c index 97c328041d..48606cbea1 100644 --- a/lib/dns/rbtdb.c +++ b/lib/dns/rbtdb.c @@ -172,9 +172,12 @@ typedef isc_rwlock_t nodelock_t; * to be 0 by default either with or without threads. */ #ifndef DNS_RBTDB_LIMITLRUUPDATE -#define DNS_RBTDB_LIMITLRUUPDATE 0 +#define DNS_RBTDB_LIMITLRUUPDATE 1 #endif +#define DNS_RBTDB_LRUUPDATE_GLUE 300 +#define DNS_RBTDB_LRUUPDATE_REGULAR 600 + /* * Allow clients with a virtual time of up to 5 minutes in the past to see * records that would have otherwise have expired. @@ -10088,11 +10091,11 @@ need_headerupdate(rdatasetheader_t *header, isc_stdtime_t now) { * Glue records are updated if at least 60 seconds have passed * since the previous update time. */ - return (header->last_used + 60 <= now); + return (header->last_used + DNS_RBTDB_LRUUPDATE_GLUE <= now); } /* Other records are updated if 5 minutes have passed. */ - return (header->last_used + 300 <= now); + return (header->last_used + DNS_RBTDB_LRUUPDATE_REGULAR <= now); #else UNUSED(now);