main
Add blob_cache_read_byte perf context counter (#14792)
Merge branch 'facebook:main' into spatial-develop
Removed a debug;
Fix GetContext status propagation and blob-backed wide-column merge operands (#14640)
Clarify that `memtable_op_scan_flush_trigger` does not support tailing iterator (#13586)
Introduction of MultiScanOptions (#13837)
MultiCfIterator - AttributeGroupIter Impl & CoalescingIter Optimization (#12534)
Some small improvements around allow_unprepared_value and multi-CF iterators (#13113)
db_iter: eagerly resolve blob-backed iterator columns (#14632)
Track blob garbage during flush of direct-write blob references (#14623)
Expose AdvancedColumnFamilyOptions::memtable_batch_lookup_optimization in the C API (#14776)
Wide-column blob separation: lazy resolution through read, compaction, and write paths (#14386)
Gate file_open_metadata consumption on fast_sst_open option (#14676)
Bug fix: Reject empty string as a column family name (#14732)
Remove deprecated DB::Open raw pointer variants (and more) (#14335)
Propagate file_checksum through FileOptions on NewRandomAccessFile (#14321)
Sync recovery SST directory before reused MANIFEST append (#14780)
Fix check-sources.sh non-ASCII check and remove non-ASCII from sources (#14729)
Remove deprecated SliceTransform::InRange() virtual method (#14353)
Support Clip DB to KeyRange (#11379)
Support abort background compaction jobs. (#14227)
Replace ScopedArenaIterator with ScopedArenaPtr<InternalIterator> (#12470)
Standardize on clang-format version 18 (#13233)
Support GetFileSize API in FSRandomAccessFile (#13676)
Start development 11.4 (#14747)
Blob direct write v1: write-path blob separation with partitioned files (reduced scope) (#14535)
Typo fix (#14024)
Don't log an error when an auxiliary dir is missing (#12326)
Add a DB Session ID (#6959)
Fix in-place updates for value types other than kTypeValue (#10254)
Fix tests broken by gtest upgrade (#13661)
Fix SeekForPrev key pinning regression in FindValueForCurrentKeyUsingSeek (#14746)
Refactor wal related naming and more (#13490)
Fix flaky DBTestXactLogIterator.TransactionLogIteratorCheckWhenArchive (#14349)
Make concurrent Memtable stats more robust (#14506)
Fix GetMergeOperands() in ReadOnly and SecondaryDB (#13396)
Add async WAL precreation
New FlushWAL() API to take extra fields such as rate limiter priority (#14037)
Fix secondary WAL tailing with precreated future WAL (#14781)
Make ParseCompressionNameForDisplay manager-aware (#14658)
Fix DBTest cleanup for alternate log dirs (#14764)
Add num_data_blocks_compression_rejected/bypassed to TableProperties (#14551)
Introduce column family option `cf_allow_ingest_behind` (#13810)
Fix flaky preallocation tests on btrfs, zfs, tmpfs, and overlayfs (#14744)
Fix an infinite compaction loop bug with udt (#14228)
Add timestamp support to DBImplReadOnly (#10004)
Skip flush during recovery if read_only (#14440)
Clarify/rename atomic wrapper stuff + blog post (#14213)
Reduce use of snprintf and fixed-size buffers (#13154)
Convert sequential single deletes into range tombstones (#14448)
Remove deprecated DB::DeleteFile API references (#13322)
Add option to validate sst files in the background on DB open (#14322)
Deflake unit test `DBErrorHandlingFSTest.AtomicFlushNoSpaceError` (#13234)
Rocksdb Crash Test failed: assertion failed - corruption: Sequence number is being set backwards dur (#14567) (#14567)
Remove RocksDB LITE (#11147)
Reformat source files (#14331)
Enforce < 4GB sizes for keys, values, and some BlockBuilder inputs (#14461)
Fast file open: retrieve, persist, and pass file open metadata (#14596)
Allow ingestion of any DB generated SST file (#13878)
Remove deprecated SstFileWriter::Add() and skip_filters parameter (#14352)
Handle DB::Open failure in fault_injection_test better (#14646)
Simplify conditional judgment (#11580)
Ran clang-format on db/ directory (#10910)
Replace namespace name "rocksdb" with ROCKSDB_NAMESPACE (#6433)
Include C++ standard library headers instead of C compatibility headers (#8068)
Clean up some CFOptions code hygiene, fix SetOptions() bug (#13294)
Refactor AddRangeDels() + consider range tombstone during compaction file cutting (#11113)
Support to create a CF by importing multiple non-overlapping CFs (#11378)
Block per key-value checksum (#11287)
Notify listeners before DB shutdown begins (#14769)
Detect WAL hole (#13226)
Use unique_ptr for StreamingCompress and StreamingUncompress (#14665)
Add reuse_manifest_on_open DBOption (#14704)
Prefer static_cast in place of most reinterpret_cast (#12308)
Offline file checksum manifest retriever (#13178)
Reverse the order of updates to the same key in WriteBatchWithIndex (#13387)
Integrate compaction resumption with DB::OpenAndCompact() (#13984)
Use C++20 in public API, fix CI (#13915)
Fix MultiScan not respecting SupportedOps for async IO (#14510)
Removed `check_flush_compaction_key_order` (#12311)
Fix & improve compaction trigger on a "quiet" DB (#14396)
Add a new periodic task to trigger compactions (#13736)
Read-triggered compactions (#14426)
Snapshots with user-specified timestamps (#9879)
Fix and detect headers with missing dependencies (#8893)
Revert #14122 "Fix a bug where compaction ..." (#14170)
Improve FragmentTombstones() speed by lazily initializing `seq_set_` (#10848)
Fix Range Tombstone Entry Accounting Bug (#14579)
Remove stale entries from L0 files when UDT is not persisted (#13035)
Improve consistency of SeqnoToTime tracking in SuperVersion (#13316)
Optimize compaction for standalone range deletion files (#13078)
Add CompactForTieringCollector to support automatically trigger compaction for tiering use case (#12760)
Record newest_key_time as a table property (#13083)
Fix corrupted wal number when predecessor wal corrupts + minor cleanup (#13359)
Persist compacted manifest size for auto-tuning across DB::Open (#14725)
Add new heauristic 'num_collapsible_entry_reads_sampled' (#14434)
Do not hold mutex when write keys if not necessary (#7516)
Fix unsigned underflow in WAL TTL logic when system clock goes backwards (#14016)
Auto-tune manifest file size (#14076)
Revamp WriteController (#8064)
Fix initialization-order-fiasco in write_stall_stats.cc (#11355)
Remove unnecessary, confusing 'extern' (#12300)
Introduce a transaction option to skip memtable write during commit (#13144)