The named configuration files used in the "geoip2" system test cause a
rather large number of views (6-8) to be set up in each tested named
instance. Each view has its own cache.
Commit e24bc324b4 caused the RBT hash
table to be pre-allocated to a size derived from "max-cache-size", so
that it never needs to be rehashed. The size of that hash table is not
expected to be significant enough to cause memory use issues in typical
conditions even for large "max-cache-size" settings.
However, these two factors combined can cause memory exhaustion issues
in GitLab CI, where we run multiple "instances" of the test suite in
parallel on the same runner, each test suite executes multiple system
tests concurrently, and each system test may potentially start multiple
named instances at the same time. In practice, this problem currently
only seems to be affecting the "geoip2" system test, which is failing
intermittently due to named instances used by that test getting killed
by oom-killer.
Prevent the "geoip2" system test from failing intermittently by setting
"max-cache-size" in named configuration files used in that test to a low
value in order to keep memory usage at bay even with a large number of
views configured.
100 lines
1.7 KiB
Plaintext
100 lines
1.7 KiB
Plaintext
/*
|
|
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
|
|
*
|
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* 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/.
|
|
*
|
|
* See the COPYRIGHT file distributed with this work for additional
|
|
* information regarding copyright ownership.
|
|
*/
|
|
|
|
// NS2
|
|
|
|
options {
|
|
query-source address 10.53.0.2;
|
|
notify-source 10.53.0.2;
|
|
transfer-source 10.53.0.2;
|
|
port @PORT@;
|
|
pid-file "named.pid";
|
|
listen-on { 10.53.0.2; };
|
|
listen-on-v6 { fd92:7065:b8e:ffff::2; };
|
|
recursion no;
|
|
dnssec-validation no;
|
|
geoip-directory "../data";
|
|
max-cache-size 1M;
|
|
};
|
|
|
|
key rndc_key {
|
|
secret "1234abcd8765";
|
|
algorithm hmac-sha256;
|
|
};
|
|
|
|
controls {
|
|
inet 10.53.0.2 port @CONTROLPORT@ allow { any; } keys { rndc_key; };
|
|
};
|
|
|
|
view one {
|
|
match-clients { geoip asnum "AS100001"; };
|
|
zone "example" {
|
|
type primary;
|
|
file "example1.db";
|
|
};
|
|
};
|
|
|
|
view two {
|
|
match-clients { geoip asnum "AS100002"; };
|
|
zone "example" {
|
|
type primary;
|
|
file "example2.db";
|
|
};
|
|
};
|
|
|
|
view three {
|
|
match-clients { geoip asnum "AS100003"; };
|
|
zone "example" {
|
|
type primary;
|
|
file "example3.db";
|
|
};
|
|
};
|
|
|
|
view four {
|
|
match-clients { geoip asnum "AS100004"; };
|
|
zone "example" {
|
|
type primary;
|
|
file "example4.db";
|
|
};
|
|
};
|
|
|
|
view five {
|
|
match-clients { geoip asnum "AS100005"; };
|
|
zone "example" {
|
|
type primary;
|
|
file "example5.db";
|
|
};
|
|
};
|
|
|
|
view six {
|
|
match-clients { geoip asnum "AS100006"; };
|
|
zone "example" {
|
|
type primary;
|
|
file "example6.db";
|
|
};
|
|
};
|
|
|
|
view seven {
|
|
match-clients { geoip asnum "AS100007"; };
|
|
zone "example" {
|
|
type primary;
|
|
file "example7.db";
|
|
};
|
|
};
|
|
|
|
view none {
|
|
match-clients { any; };
|
|
zone "example" {
|
|
type primary;
|
|
file "example.db.in";
|
|
};
|
|
};
|