2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-22 10:10:06 +00:00

preen ondrej's hash table notes

Tony Finch 2022-04-07 11:08:36 +01:00
parent d0163cceb9
commit e5cec4d503

@ -126,13 +126,21 @@ Case-sensitive and case-insensitive variants, chosen at run-time.
Uses chaining, so it is heavy on indirection and heavy on allocation. Uses chaining, so it is heavy on indirection and heavy on allocation.
Modern hash tables use open addressing. Modern hash tables use open addressing.
Ondrej: there's work to do on the isc_ht: ## Ondřej's notes
1. make header-only variant of the hashtable, so we can unify the usage across the codebase (e.g. no extra allocations when storing item) There's work to do on `isc/ht`:
2. there's a branch, where I implemented robin-hood hashing, but I never finished because of 1), the branch is ondrej/robin-hood-unordered-node-map
3. the resizing was added only recently, we still miss shrinking (should be easy enough to do) 1. make header-only variant of the hashtable, so we can unify the usage
across the codebase (e.g. no extra allocations when storing item)
2. there's a branch, where I implemented robin-hood hashing, but I never
finished because of 1), the branch is ondrej/robin-hood-unordered-node-map
3. the resizing was added only recently, we still miss shrinking (should be
easy enough to do)
`dns/adb` was recently refactored, it used a custom hashtable before
Ondrej: dns_adb was recently refactored, it used a custom hashtable before
# `isc/pool` # `isc/pool`