0.5.0
Major features
Optimize MultimapTable
storage format to use O(k * log(n_k) + v * log(n_v / n_k))
space instead of O(k * log(n_k + n_v) + v * log(n_k + n_v))
space, where k is the size of the stored keys, v is the size of the stored values, n_k is the number of stored keys, n_v is the number of stored values
Minor features
- Add support for the unit type,
()
, as a value - Change
MultimapTable::range
to return an iterator of key-value-collection pairs, instead of key-value pairs - Automatically abort
WriteTransaction
on drop - Return an error when attempting to open the same database file for writing in multiple locations, concurrently
Fixes
- Fix compilation errors for 32bit x86 targets
- More robust handling of fsync failures