Kagami Sascha Rosylight
|
0f3e934f77
|
Follow the default behavior of rustfmt (#224)
|
2 years ago |
Jan-Erik Rediger
|
a2de8a917d
|
Address new clippy warnings
|
2 years ago |
Jan-Erik Rediger
|
dd42887903
|
Hide all of LMDB behind a feature
|
2 years ago |
Xidorn Quan
|
47f63aead1
|
Replace failure with thiserror
|
3 years ago |
Victor Porof
|
bce037a902
|
Add a way to discard corrupted databases on load
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
4 years ago |
Victor Porof
|
b51b5e07a5
|
Prevent potential deadlocks in safe mode environments when opnening dbs
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
4 years ago |
Victor Porof
|
84b74b7610
|
Handle NO_LOCK when opening environments
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
4 years ago |
Victor Porof
|
b2f4f097c6
|
Handle NO_LOCK and NO_SUB_DIR when retrieving environment files
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
4 years ago |
Victor Porof
|
a634920d46
|
Remove `set_check_if_env_exists` since it's unreliable with LMDB
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
4 years ago |
Victor Porof
|
bada6fec6f
|
Make migration easier for consumers
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
4 years ago |
Victor Porof
|
ceda0d5091
|
Implement a basic migrator that works across backends
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
4 years ago |
Victor Porof
|
0fd756d5d9
|
Add ability to list all created dbs
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
4 years ago |
Victor Porof
|
55d04b43ad
|
Move current migrator to a legacy module
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
4 years ago |
Victor Porof
|
5d14812cc9
|
Hide DUP_FIXED behind the same build flag as DUP_SORT
|
4 years ago |
Victor Porof
|
ef64a29fc7
|
Fix inconsistent max_dbs behavior between backends
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
4 years ago |
Victor Porof
|
71de0e836d
|
Graciously handle backends with no need for resizing, instead of panicking
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
4 years ago |
Victor Porof
|
a8cef4ee1a
|
Allow creating dirs if they don't exist
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
4 years ago |
Victor Porof
|
9fe69b11ce
|
Update crate documentation, more consistent formatting
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
4 years ago |
Victor Porof
|
dd360eeb69
|
Expose common backend errors as top-level store errors; this allows users not to worry about which backend they're using
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
5 years ago |
Victor Porof
|
4cdfba6754
|
Rename `DatabaseInvalid` to `FileInvalid` to avoid confusion with `DatabaseCorrupted`
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
5 years ago |
Victor Porof
|
a4d3ef2ca7
|
Rename `DbPoisonError` to `EnvPoisonError`
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
5 years ago |
Victor Porof
|
d53f82d651
|
Don't leak arena implementation details into documentation
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
5 years ago |
Victor Porof
|
5a00929742
|
Opening should fail when read transactions exist for `open` and `create` operations
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
5 years ago |
Victor Porof
|
ae33373bc4
|
Delay short-circuiting `skip_while` and `filter` adaptors for better perforamnce in case of multi databases
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
5 years ago |
Victor Porof
|
a5389008b6
|
Don't allocate when creating 'from' and 'dup_of' iterators
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
5 years ago |
Victor Porof
|
c8fac3bb43
|
Rename confusingly or inappropriately named lifetimes
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
5 years ago |
Victor Porof
|
b5fedd453a
|
Fix cursor/iterator lifetime coupling which can result in referencing invalid memory when eliminating dead code
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
5 years ago |
Victor Porof
|
607700872d
|
Optimize for non-int and non-dup-sort types of databases using features
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
5 years ago |
Victor Porof
|
fca4a8d9ea
|
Ensure that backends fail with a store error when attempting to open invalid databases
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
5 years ago |
Victor Porof
|
40e1d84b60
|
Make iterators yield items sorted by key (match LMDB)
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
5 years ago |
Victor Porof
|
957fb8d34d
|
Prevent opening databases when `max_dbs` is reached (match LMDB)
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
5 years ago |
Victor Porof
|
4bbe883d29
|
Prevent opening databases while read transactions are open (match LMDB)
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
5 years ago |
Victor Porof
|
3fe8f2eccc
|
Prevent needless key/value copies in database methods
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
5 years ago |
Victor Porof
|
293795295f
|
Make transaction snapshots cheaper in the general case
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
5 years ago |
Victor Porof
|
d97acd3be6
|
Re-enable equality and copy trait requirements on databases
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
5 years ago |
Victor Porof
|
eaf70e7f94
|
Use an arena for safe mode databases
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
5 years ago |
Victor Porof
|
9792551a4c
|
Remove write flags superfluous associated type
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
5 years ago |
Victor Porof
|
4a955a70a0
|
Implement safe mode backing store
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
5 years ago |
Victor Porof
|
1d9c11f9f4
|
Drop eq and partial-eq trait requirement on backend databases
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
5 years ago |
Victor Porof
|
2bb1436375
|
Drop copy and clone traits requirement on backend databases
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
5 years ago |
Victor Porof
|
a4d76eb250
|
Generalize LMDB usage and add support for multiple backing stores
Signed-off-by: Victor Porof <victor.porof@gmail.com>
|
5 years ago |