]> git.ipfire.org Git - thirdparty/unbound.git/commitdiff
plan and comments.
authorWouter Wijngaards <wouter@nlnetlabs.nl>
Wed, 19 Sep 2007 09:20:24 +0000 (09:20 +0000)
committerWouter Wijngaards <wouter@nlnetlabs.nl>
Wed, 19 Sep 2007 09:20:24 +0000 (09:20 +0000)
git-svn-id: file:///svn/unbound/trunk@621 be551aaa-1e26-0410-a405-d3ace91eadb9

daemon/worker.c
doc/Changelog
doc/plan
util/data/msgreply.h

index 6cd76b66b822a8e0d4e980a221d9e6851b87f275..32eef812033e21ebe89f9cf973e9ce0ff84e07a9 100644 (file)
@@ -748,7 +748,7 @@ worker_handle_request(struct comm_point* c, void* arg, int error,
                        lock_rw_unlock(&e->lock);
                        return 1;
                }
-               verbose(VERB_DETAIL, "answer from the cache -- data has timed out");
+               verbose(VERB_ALGO, "answer from the cache failed");
                lock_rw_unlock(&e->lock);
        }
        if(!LDNS_RD_WIRE(ldns_buffer_begin(c->buffer))) {
@@ -758,7 +758,7 @@ worker_handle_request(struct comm_point* c, void* arg, int error,
                        &edns)) {
                        return 1;
                }
-               verbose(VERB_DETAIL, "answer norec from cache -- "
+               verbose(VERB_ALGO, "answer norec from cache -- "
                        "need to validate or not primed");
        }
        ldns_buffer_rewind(c->buffer);
index 9745ad62237cb8350d28f64490920e894781cd19..9ffc9c40d8f735f31a381795ca148110b2e376e5 100644 (file)
@@ -1,3 +1,7 @@
+19 September 2007: Wouter
+       - comments about non-packed usage.
+       - plan for overload support in 0.6.
+
 18 September 2007: Wouter
        - wildcard nsec3 testcases, and fixup to get correct wildcard name.
        - validator prints subtype classification for debug.
index 30a22c9c035f5f0e8d30b6d5137c06ceea8016c3..7048a7fe1197bd93f27b2afcb04f5560c80a3ffd 100644 (file)
--- a/doc/plan
+++ b/doc/plan
@@ -169,6 +169,16 @@ Styleguide:
   logfileparsing tool that makes these excerpts and emails them.
 * ANS failure workaround (nxdomain for ENT; check if nxdomain is ENTnodata).
 * clear cache as a callback from the new-rrset-id routine.
+* make overload mode work; phase 0 all ok, phase 1 some threads close ports,
+  to let other threads pick up work. phase 2, all threads closed, so all open
+  the ports again and drop all non-cache-reply queries.
+  Keep mutexed num-overloaded-threads counter. thread incs it when it hits
+  max number of user queries serviced in mesh. threads decs it when it
+  falls below 90% of the max. if incs, and not all threads closed, phase 1,
+  else, phase 2 start is broadcast over command pipes. if decs, open ports
+  if phase 1, start servicing, phase is 0 again. Make robust against delays.
+  readme: max about 1 second worth of incoming queries, 10k perhaps,
+       or 1/number of seconds it takes start up of 10k.
 
 *** Local zones feature.
 * Build in local zone features. First the total stop for1912.
index cacf806bc42fa0a601c49caa8c585477a10f2033..b4e12591b3fb2ed6bac42f83aee274428e1274ab 100644 (file)
@@ -89,6 +89,10 @@ struct rrset_ref {
  *     o struct
  *     o rrset_ref array
  *     o packed_rrset_key* array.
+ *
+ * Memory layout is sometimes not packed, when the message is synthesized,
+ * for easy of the generation. It is allocated packed when it is copied
+ * from the region allocation to the malloc allocation.
  */
 struct reply_info {
        /** the flags for the answer, host byte order. */