Skip to content

RocksDB 9.5.2

Compare
Choose a tag to compare
@hx235 hx235 released this 21 Aug 15:10
· 172 commits to main since this release

9.5.2 (2024-08-13)

Bug Fixes

  • Fix a race condition in pessimistic transactions that could allow multiple transactions with the same name to be registered simultaneously, resulting in a crash or other unpredictable behavior.

Public API Changes

  • Add ticker stats to count file read retries due to checksum mismatch

9.5.1 (2024-08-02)

Bug Fixes

  • *Make DestroyDB supports slow deletion when it's configured in SstFileManager. The slow deletion is subject to the configured rate_bytes_per_sec, but not subject to the max_trash_db_ratio.

9.5.0 (2024-07-19)

Public API Changes

  • Introduced new C API function rocksdb_writebatch_iterate_cf for column family-aware iteration over the contents of a WriteBatch
  • Add support to ingest SST files generated by a DB instead of SstFileWriter. This can be enabled with experimental option IngestExternalFileOptions::allow_db_generated_files.

Behavior Changes

  • When calculating total log size for the log_size_for_flush argument in CreateCheckpoint API, the size of the archived log will not be included to avoid unnecessary flush

Bug Fixes

  • Fix a major bug in which an iterator using prefix filtering and SeekForPrev might miss data when the DB is using whole_key_filtering=false and partition_filters=true.
  • Fixed a bug where OnErrorRecoveryBegin() is not called before auto recovery starts.
  • Fixed a bug where event listener reads ErrorHandler's bg_error_ member without holding db mutex(#12803).
  • Fixed a bug in handling MANIFEST write error that caused the latest valid MANIFEST file to get deleted, resulting in the DB being unopenable.
  • Fixed a race between error recovery due to manifest sync or write failure and external SST file ingestion. Both attempt to write a new manifest file, which causes an assertion failure.

Performance Improvements

  • Fix an issue where compactions were opening table files and reading table properties while holding db mutex_.
  • Reduce unnecessary filesystem queries and DB mutex acquires in creating backups and checkpoints.