bind9/tests/isc
Ondřej Surý 915aa590b6
Make isc_mem_isovermem() probabilistic
Replace the hysteretic hi_water/lo_water switch with a stochastic
check: always false below lo_water, always true at or above hi_water,
linearly ramped probability in between.  This spreads cache cleaning
across many inserts instead of triggering a thundering herd once the
hi_water mark is crossed (which causes every addrdataset to enter the
LRU purge path simultaneously and serializes lookups behind the node
write locks).

The is_overmem atomic and its stores are no longer needed and are
removed.  The existing tests that asserted specific hysteretic state
transitions are simplified to check only the deterministic boundaries.

(cherry picked from commit ee24d2a1c3361dcc1c48fb29bb2e0b91bc3405e8)
2026-05-07 13:21:59 +02:00
..
testdata/file Move all the unit tests to /tests/<libname>/ 2022-05-31 12:06:00 +02:00
aes_test.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
buffer_test.c Include <inttypes.h> whenever including <cmocka.h> 2023-05-18 15:36:03 +02:00
counter_test.c Include <inttypes.h> whenever including <cmocka.h> 2023-05-18 15:36:03 +02:00
crc64_test.c Use clang-format-20 to update formatting 2025-06-25 13:59:44 +10:00
doh_test.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
errno_test.c Include <inttypes.h> whenever including <cmocka.h> 2023-05-18 15:36:03 +02:00
file_test.c Use clang-format-22 to update formatting 2026-03-04 12:24:53 +01:00
hash_test.c Move all the unit tests to /tests/<libname>/ 2022-05-31 12:06:00 +02:00
heap_test.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
hmac_test.c Use clang-format-20 to update formatting 2025-06-25 13:59:44 +10:00
ht_test.c Fix case insensitive matching in isc_ht hash table implementation 2024-02-11 11:23:28 +01:00
lex_test.c Include <inttypes.h> whenever including <cmocka.h> 2023-05-18 15:36:03 +02:00
Makefile.am Drop the unit test for testing randomness 2025-11-04 20:51:48 +01:00
md_test.c Use clang-format-20 to update formatting 2025-06-25 13:59:44 +10:00
mem_test.c Make isc_mem_isovermem() probabilistic 2026-05-07 13:21:59 +02:00
netaddr_test.c Include <inttypes.h> whenever including <cmocka.h> 2023-05-18 15:36:03 +02:00
netmgr_test.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
parse_test.c Move all the unit tests to /tests/<libname>/ 2022-05-31 12:06:00 +02:00
pool_test.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
quota_test.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
radix_test.c Add regression test for [GL # 4090] 2023-05-29 13:27:51 +10:00
regex_test.c Include <inttypes.h> whenever including <cmocka.h> 2023-05-18 15:36:03 +02:00
result_test.c Include <inttypes.h> whenever including <cmocka.h> 2023-05-18 15:36:03 +02:00
safe_test.c Include <inttypes.h> whenever including <cmocka.h> 2023-05-18 15:36:03 +02:00
siphash_test.c Include <inttypes.h> whenever including <cmocka.h> 2023-05-18 15:36:03 +02:00
sockaddr_test.c Include <inttypes.h> whenever including <cmocka.h> 2023-05-18 15:36:03 +02:00
stats_test.c Include <inttypes.h> whenever including <cmocka.h> 2023-05-18 15:36:03 +02:00
symtab_test.c Include <inttypes.h> whenever including <cmocka.h> 2023-05-18 15:36:03 +02:00
task_test.c ISC_RUN_TEST_IMPL should use a static declaration 2026-01-29 00:43:25 +11:00
taskpool_test.c Include <inttypes.h> whenever including <cmocka.h> 2023-05-18 15:36:03 +02:00
time_test.c Include <inttypes.h> whenever including <cmocka.h> 2023-05-18 15:36:03 +02:00
timer_test.c Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00
uv_wrap.h Remove redundant parentheses from the return statement 2024-11-19 16:06:16 +01:00