RocksDB v5.13.0 Release Notes

Release Date: 2018-03-20 // about 6 years ago
  • Public API Change

    • RocksDBOptionsParser::Parse()'s ignore_unknown_options argument will only be effective if the option file shows it is generated using a higher version of RocksDB than the current version.
    • โœ‚ Remove CompactionEventListener.

    ๐Ÿ†• New Features

    • ๐ŸŒฒ SstFileManager now can cancel compactions if they will result in max space errors. SstFileManager users can also use SetCompactionBufferSize to specify how much space must be leftover during a compaction for auxiliary file functions such as logging and flushing.
    • Avoid unnecessarily flushing in CompactRange() when the range specified by the user does not overlap unflushed memtables.
    • If ColumnFamilyOptions::max_subcompactions is set greater than one, we now parallelize large manual level-based compactions.
    • โž• Add "rocksdb.live-sst-files-size" DB property to return total bytes of all SST files belong to the latest LSM tree.
    • NewSstFileManager to add an argument bytes_max_delete_chunk with default 64MB. With this argument, a file larger than 64MB will be ftruncated multiple times based on this size.

    ๐Ÿ› Bug Fixes

    • Fix a leak in prepared_section_completed_ where the zeroed entries would not removed from the map.
    • ๐Ÿ›  Fix WAL corruption caused by race condition between user write thread and backup/checkpoint thread.