github facebook/rocksdb v10.8.3

latest release: v10.9.1
3 days ago

10.8.3 (11/10/2025)

New Features

  • Add a GetColumnFamilyMetaData API variant in DB to get the SST files intersecting a given key range.

10.8.2 (11/07/2025)

New Features

  • Added an auto-tuning feature for DB manifest file size that also (by default) improves the safety of existing configurations in case max_manifest_file_size is repeatedly exceeded. The new recommendation is to set max_manifest_file_size to something small like 1MB and tune max_manifest_space_amp_pct as needed to balance write amp and space amp in the manifest. Refer to comments on those options in DBOptions for details. Both options are (now) mutable.
  • Add a new option allow_trivial_move in CompactionOptions to allow CompactFiles to perform trivial move if possible. By default the flag of allow_trivial_move is false, so it preserve the original behavior.

10.8.1 (10/29/2025)

Behavior Changes

  • PosixWritableFile now repositions the seek pointer to the new end of file after a call to Truncate.

10.8.0 (10/21/2025)

New Features

  • Add kFSPrefetch to FSSupportedOps enum to allow file systems to indicate prefetch support capability, avoiding unnecessary prefetch system calls on file systems that don't support them.
  • Added experimental support OpenAndCompactOptions::allow_resumption for resumable compaction that persists progress during OpenAndCompact(), allowing interrupted compactions to resume from the last progress persitence. The default behavior is to not persist progress.

Public API Changes

  • Allow specifying output temperature in CompactionOptions
  • Added DB::FlushWAL(const FlushWALOptions&) as an alternative to DB::FlushWAL(bool sync), where FlushWALOptions includes a new rate_limiter_priority field (default Env::IO_TOTAL) that allows rate limiting and priority passing of manual WAL flush's IO operations.
  • The MultiScan API contract is updated. After a multi scan range got prepared with Prepare API call, the following seeks must seek the start of each prepared scan range in order. In addition, when limit is set, upper bound must be set to the same value of limit before each seek

Behavior Changes

  • kChangeTemperature FIFO compaction will now honor compaction_target_temp to all levels regardless of cf_options::last_level_temperature
  • Allow UDIs with a non BytewiseComparator

Bug Fixes

  • Fix incorrect MultiScan seek error status due to bugs in handling range limit falling between adjacent SST files key range.
  • Fix a bug in Page unpinning in MultiScan

Performance Improvements

  • Fixed a performance regression in LZ4 compression that started in version 10.6.0

Don't miss a new rocksdb release

NewReleases is sending notifications on new releases.