From: Wouter Wijngaards Date: Tue, 7 Jul 2009 10:16:34 +0000 (+0000) Subject: rrset id for cache flush X-Git-Tag: release-1.3.1~4 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=5decb468c2ed27bef9ba113448e3ae9a974b0b75;p=thirdparty%2Funbound.git rrset id for cache flush git-svn-id: file:///svn/unbound/trunk@1703 be551aaa-1e26-0410-a405-d3ace91eadb9 --- diff --git a/doc/TODO b/doc/TODO index 7f999d6d4..de29ed1bb 100644 --- a/doc/TODO +++ b/doc/TODO @@ -179,8 +179,12 @@ Triggered by a trust anchor or by a signed DS record for a zone. Another option is to check if the IP address for the bad data is in the delegation point for the zone. If it is not - try again instantly. This is a loop if the NS has zero TTL on its address. - Another option is to flush the zone from cache, too expensive to implement. - How to solve this? + Flush cache is when the zone is backed off to more than one second. + Flush is denoted by an age number, we use the rrset-special-id number, + this is a thread-specific number. At validation failure, if the data + RRset is older than this number, it is flushed and the query is restarted. + A thread stores its own id number when a backoff larger than a second + occurs and its id number has not been stored yet. * unbound is configured to talk to upstream caches. These caches have inconsistent bad data. If one is bad, it is marked bad for that zone. If all are bad, there may not be any way for unbound to remove the