RocksDB v5.12.0 Release Notes
Release Date: 2018-02-14 // about 6 years ago-
Public API Change
- ๐ Iterator::SeekForPrev is now a pure virtual method. This is to prevent user who implement the Iterator interface fail to implement SeekForPrev by mistake.
- Add
include_end
option to make the range end exclusive wheninclude_end == false
inDeleteFilesInRange()
. - Add
CompactRangeOptions::allow_write_stall
, which makesCompactRange
start working immediately, even if it causes user writes to stall. The default value is false, meaning we add delay toCompactRange
calls until stalling can be avoided when possible. Note this delay is not present in previous RocksDB versions. - Creating checkpoint with empty directory now returns
Status::InvalidArgument
; previously, it returnedStatus::IOError
. - โ Adds a BlockBasedTableOption to turn off index block compression.
- Close() method now returns a status when closing a db.
๐ New Features
- ๐ Improve the performance of iterators doing long range scans by using readahead.
- โ Add new function
DeleteFilesInRanges()
to delete files in multiple ranges at once for better performance. - ๐ FreeBSD build support for RocksDB and RocksJava.
- ๐ Improved performance of long range scans with readahead.
- โก๏ธ Updated to and now continuously tested in Visual Studio 2017.
๐ Bug Fixes
- ๐ Fix
DisableFileDeletions()
followed byGetSortedWalFiles()
to not return obsolete WAL files thatPurgeObsoleteFiles()
is going to delete. - ๐ Fix Handle error return from WriteBuffer() during WAL file close and DB close.
- ๐ Fix advance reservation of arena block addresses.
- ๐ Fix handling of empty string as checkpoint directory.