You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Fix a race condition in FIFO size-based compaction where concurrent threads could select the same non-L0 file, causing assertion failures in debug builds or "Cannot delete table file from LSM tree" errors in release builds.
10.6.1 (2025-09-05)
New Features
Add the fail_if_no_udi_on_open flag in BlockBasedTableOption to control whether a missing user defined index block in a SST is a hard error or not.
Add new option MultiScanArgs::max_prefetch_size that limits the memory usage of per file pinning of prefetched blocks.
10.6.0 (2025-08-22)
New Features
Introduce column family option cf_allow_ingest_behind. This option aims to replace DBOptions::allow_ingest_behind to enable ingest behind at the per-CF level. DBOptions::allow_ingest_behind is deprecated.
Introduce MultiScanArgs::io_coalesce_threshold to allow a configurable IO coalescing threshold.
Public API Changes
IngestExternalFileOptions::allow_db_generated_files now allows files ingestion of any DB generated SST file, instead of only the ones with all keys having sequence number 0.
decouple_partitioned_filters = true is now the default in BlockBasedTableOptions.
GetTtl() API is now available in TTL DB
Minimum supported version of LZ4 library is now 1.7.0 (r129 from 2015)
Some changes to experimental Compressor and CompressionManager APIs
A new Filesystem::SyncFile function is added for syncing a file that was already written, such as on file ingestion. The default implementation matches previous RocksDB behavior: re-open the file for read-write, sync it, and close it. We recommend overriding for FileSystems that do not require syncing for crash recovery or do not handle (well) re-opening for writes.
Behavior Changes
When allow_ingest_behind is enabled, compaction will no longer drop tombstones based on the absence of underlying data. Tombstones will be preserved to apply to ingested files.
Bug Fixes
Files in dropped column family won't be returned to the caller upon successful, offline MANIFEST iteration in GetFileChecksumsFromCurrentManifest.
Fix a bug in MultiScan that causes it to fall back to a normal scan when dictionary compression is enabled.
Fix a crash in iterator Prepare() when fill_cache=false
Fix a bug in MultiScan where incorrect results can be returned when a Scan's range is across multiple files.
Fixed a bug in remote compaction that may mistakenly delete live SST file(s) during the cleanup phase when no keys survive the compaction (all expired)
Allow a user defined index to be configured from a string.
Make the User Defined Index interface consistently use the user key format, fixing the previous mixed usage of internal and user key.
Performance Improvements
Small improvement to CPU efficiency of compression using built-in algorithms, and a dramatic efficiency improvement for LZ4HC, based on reusing data structures between invocations.