Improve performance for delegation heavy answers and also general query performance (#44029)

This commit is contained in:
Mukund Sivaraman
2017-04-22 08:25:10 +05:30
parent 4c31eda5e1
commit 03be5a6b4e
134 changed files with 1619 additions and 4420 deletions

View File

@@ -6,10 +6,8 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
# $Id: clean.sh,v 1.10 2011/12/23 23:47:13 tbox Exp $
rm -f dig.out.test*
rm -f dig.out.cyclic dig.out.fixed dig.out.random
rm -f dig.out.cyclic dig.out.fixed dig.out.random dig.out.nomatch
rm -f dig.out.0 dig.out.1 dig.out.2 dig.out.3
rm -f dig.out.cyclic2
rm -f ns2/root.bk

View File

@@ -36,3 +36,8 @@ cyclic2.example. A 1.2.3.4
cyclic2.example. A 1.2.3.3
cyclic2.example. A 1.2.3.2
cyclic2.example. A 1.2.3.1
;
nomatch.example. A 1.2.3.1
nomatch.example. A 1.2.3.2
nomatch.example. A 1.2.3.3
nomatch.example. A 1.2.3.4

View File

@@ -19,7 +19,6 @@ options {
listen-on { 10.53.0.3; };
listen-on-v6 { none; };
recursion yes;
acache-enable yes;
notify yes;
rrset-order {
name "fixed.example" order fixed;

View File

@@ -19,7 +19,6 @@ options {
listen-on { 10.53.0.4; };
listen-on-v6 { none; };
recursion yes;
acache-enable yes;
notify yes;
rrset-order {
class IN type A name "host.example.com" order random;

View File

@@ -438,7 +438,7 @@ echo "I: Random selection return $match of 24 possible orders in 36 samples"
if [ $match -lt 8 ]; then echo ret=1; fi
if [ $ret != 0 ]; then echo "I:failed"; fi
echo "I: Checking default order no match in rrset-order (random)"
echo "I: Checking default order no match in rrset-order (no shuffling)"
ret=0
for i in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
do
@@ -447,11 +447,11 @@ done
for i in a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 9
do
$DIG +nosea +nocomm +nocmd +noquest +noadd +noauth +nocomm +nostat +short \
-p 5300 @10.53.0.4 random.example > dig.out.random|| ret=1
-p 5300 @10.53.0.4 nomatch.example > dig.out.nomatch|| ret=1
match=0
for j in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
do
eval "$DIFF dig.out.random dig.out.random.good$j >/dev/null && match$j=1 match=1"
eval "$DIFF dig.out.nomatch dig.out.random.good$j >/dev/null && match$j=1 match=1"
if [ $match -eq 1 ]; then break; fi
done
if [ $match -eq 0 ]; then ret=1; fi
@@ -461,8 +461,8 @@ for i in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
do
eval "match=\`expr \$match + \$match$i\`"
done
echo "I: Random selection return $match of 24 possible orders in 36 samples"
if [ $match -lt 8 ]; then echo ret=1; fi
echo "I: Consistent selection return $match of 24 possible orders in 36 samples"
if [ $match -ne 1 ]; then echo ret=1; fi
if [ $ret != 0 ]; then echo "I:failed"; fi
status=`expr $status + $ret`