forked from snazy/ohc
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathnotes-todos.txt
24 lines (15 loc) · 1.23 KB
/
notes-todos.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
THIS IS JUST AN UNORDERED LIST OF NOTES AND TODOS AND HINTS
Add burn test.
Cleanup (or better: combination of entry size and trigger/target) may expose a bug. Definitely worth keeping an eye on it.
It will just "do nothing" if there's not enough off-heap memory could be allocated.
But if too many threads allocate new entries and the machine is near-to-full, the whole machine may fail (due to OOM).
jemalloc + Unsafe allocation on Linux + Windows regarding fragmentation on long running systems.
Currently LRU is built in - but I'm not really sold on LRU as is. Alternatives could be
timestamp (not sold on this either - basically the same as LRU)
LIRS (https://en.wikipedia.org/wiki/LIRS_caching_algorithm), big overhead (space)
2Q (counts accesses, divides counter regularly)
LRU+random (50/50) (may give the same result than LIRS, but without LIRS' overhead)
But replacement of LRU with something else is out of scope of this ticket and should be done with real workloads in C* -
although the last one is "just" a additional config parameter.
IMO we should add a per-table option that configures whether the row cache receives data on reads+writes or just on reads.
Might prevent garbage in the cache caused by write heavy tables.