+5327. [func] Added a statistics counter to track queries
+ dropped because the recursive-clients quota was
+ exceeded. [GL #1399]
+
5326. [bug] Add python dependancy on 'distutils.core' to configure.
'distutils.core' is required for installation.
[GL #1397]
"QryUsedStale");
SET_NSSTATDESC(prefetch, "queries triggered prefetch", "Prefetch");
SET_NSSTATDESC(keytagopt, "Keytag option received", "KeyTagOpt");
+ SET_NSSTATDESC(reclimitdropped,
+ "queries dropped due to recursive client limit",
+ "RecLimitDropped");
INSIST(i == ns_statscounter_max);
if [ $ret != 0 ]; then echo_i "failed"; fi
status=`expr $status + $ret`
+echo_i "checking drop statistics"
+rm -f ns3/named.stats
+$RNDCCMD stats
+for try in 1 2 3 4 5; do
+ [ -f ns3/named.stats ] && break
+ sleep 1
+done
+drops=`grep 'queries dropped due to recursive client limit' ns3/named.stats | sed 's/\([0-9][0-9]*\) queries.*/\1/'`
+[ "${drops:-0}" -ne 0 ] || ret=1
+if [ $ret != 0 ]; then echo_i "failed"; fi
+status=`expr $status + $ret`
+
echo_i "exit status: $status"
[ $status -eq 0 ] || exit 1
ISC_LIST_UNLINK(client->manager->recursing, oldest, rlink);
UNLOCK(&client->manager->reclock);
ns_query_cancel(oldest);
- } else
+ ns_stats_increment(client->sctx->nsstats,
+ ns_statscounter_reclimitdropped);
+ } else {
UNLOCK(&client->manager->reclock);
+ }
}
void
ns_statscounter_tcphighwater = 65,
- ns_statscounter_max = 66,
+ ns_statscounter_reclimitdropped = 66,
+
+ ns_statscounter_max = 67,
};
void