feature | weaselab | fdb | |-|-|-| |based on|node-copying treap|node-copying treap| |bytes per node (worst-case)|64 + kv len + 1\*|96 + kv len| |cheaper iteration*|❌|✅| |efficient bulk queries|✅|❌| |entries per set (worst-case)|1|3| |node gc|mark-and-sweep|reference-counting| |pointer-size|32-bit|64-bit| |purge strategy|scan|search| |read from foreign thread|✅ |❌ | |recursion-free|✅ |❌| |returns node memory to OS|✅ |❌| |searches per point clear|1|5| |searches per range clear|2|5| |searches per set (worst-case)|1|4| \* Part of a set of tradeoffs that enable 1 entry per set worst-case