Skip to content

Set "max-cache-size" in the "geoip2" system test

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 e24bc324 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.

Closes #2065 (closed)

Merge request reports