Change Log

Persy 0.10

Support for only in memory storage
Improved space re-use
Add support for background disc sync
Improved disc access parallelism on unix systems
Bug fixes on recovery and snapshots
General API review and stabilization

Persy 0.9

Make public the snapshot API
Remove of API deprecated in previous version
Evolve recover API for more complex use cases
Tons of fixes in indexes API for range lookups and concurrency operations

Persy 0.8

Reduce the index locking from whole index to index page
Introduce new operations API on transaction structures
Made sure that only a single fsync is needed for commit a transaction
Optimization in index operations to reduce number of clones

Persy 0.7

Increase cases where is possible to shrink file on page free
Introduction of new OpenOptions API for better files management
Improved error management now is possible to get the original error
Add support for indexing of Vec<u8> types
First support for SegmentId from operations API

Persy 0.6

Add support for double ended iterators on index range API
Add access to underling transaction for transaction aware iterators, this allow modifications while iteration
Add support from u128,i128,f32,f64 types in index implementation
Open and create APIs now support all parameters that convert to Path, in the same way of the File API
Add support of shrinking of the file if the page freed is the last of the file
Optimization of disk writes when there are multiple changes for the same index in the same transaction

Persy 0.5

Internal introduction of snapshot for more parallel index access
Range lookup API on the index
Partial flush safety for base metadata structures
List of existing segments
List of existing indexes
Redesigned API for segment scan

Persy 0.4

Indexing of simple values
Multiple index modalities support
General clean up and optimization following clippy suggestions
Improved error management Improved transaction API and safety

Persy 0.3

Double open check with file lock
Guarantee disk space reuse recycling address space
API for drive transaction recover in case of crash
Introduced recover from crash and advanced concurrency management examples
Made sure that recover work in multiple crash scenario

Persy 0.2

Transactional scan
Multithread support for segment create and drop operations
Flush operations optimizations
Multiversion concurrency management for record update

Persy 0.1

Basic architecture
Transaction Journal
Transactional insert, update, delete, read
Non transactional read and scan
Two phase commit transactions
LRU Cache
Multithread Support for insert, update, delete, read operations
Transactional segment create and drop