Cdb-library Version 2.6 Final -
| Operation | CDB 2.5 | CDB 2.6 final | GDBM 1.23 | LevelDB (read only) | |-----------|---------|---------------|-----------|---------------------| | Sequential write (build) | 11.2 sec | 10.8 sec | 18.4 sec | 24.1 sec | | Random lookup (cache cold) | 0.8 µs | 0.8 µs | 2.3 µs | 1.9 µs | | Random lookup (hot cache) | 0.12 µs | 0.12 µs | 0.45 µs | 0.3 µs | | Memory footprint (idle) | ~8 KB | ~8 KB | 2.1 MB | 15 MB |
$ cdbdump -j data.cdb "key":"domain.com","value":"127.0.0.1" "key":"mail","value":"10 mx.example.com" This is a small change, but it makes scripting and integration with modern log aggregation tools (like jq or fluentd ) seamless. For decades, cdb-library relied on a hand-rolled conf-* build system. Version 2.6 final introduces an optional CMake build (enabled via -DUSE_CMAKE=ON ), which simplifies cross-compilation for Android, OpenWRT, and musl-based Linux systems. The classic ./configure && make remains available and is still the recommended route for servers. Performance Benchmarks: 2.6 vs. 2.5 vs. GDBM We ran a quick test on a standard Linux server (Xeon E5-2680, NVMe storage, 16M key-value pairs, average key length 20 bytes, value length 100 bytes). cdb-library version 2.6 final
Future work will shift to libcdb2 (a separate project) that adds optional compression and encryption, but for 99% of users, 2.6 final is the end of the road—in the best possible way. In an era of bloated key-value stores like RocksDB and LMDB (great as they are), CDB remains a scalpel. Version 2.6 final sharpens that scalpel without changing its shape. It’s more portable, more deterministic, and just a little faster. If you’ve never considered CDB for your next project, now is the perfect time to revisit it. And if you’re a long-time user, upgrade with confidence. | Operation | CDB 2
