rocksdb/db/db_impl
Jay Huh 03cfaf3931 Make CompactionPicker::CompactFiles() take earliest_snapshot and snapshot_checker (#13816)
Summary:
One of the parameters for constructing a Compaction object is `earliest_snapshot`, which is required for Standalone Range Deletion Optimization (introduced in [https://github.com/facebook/rocksdb/pull/13078](https://github.com/facebook/rocksdb/pull/13078)). Remote Compaction has been using the `CompactionPicker::CompactFiles()` API to create the Compaction object, but this API never sets the `earliest_snapshot` parameter. To address this, update `CompactionPicker::CompactFiles()` to optionally accept `earliest_snapshot` and pass it during the call in `DBImplSecondary::CompactWithoutInstallation()`.

Pull Request resolved: https://github.com/facebook/rocksdb/pull/13816

Test Plan:
```
./compaction_service_test --gtest_filter="*CompactionServiceTest.StandaloneDeleteRangeTombstoneOptimization*"
```

\+ Tested in Meta's internal offload infra.

Reviewed By: hx235

Differential Revision: D79284769

Pulled By: jaykorean

fbshipit-source-id: 164834ef6972d5e0ddfc2970bb9234ef166d6e52
2025-08-05 10:05:02 -07:00
..
compacted_db_impl.cc Deprecate raw DB pointer in public APIs (#13311) 2025-01-17 13:33:25 -08:00
compacted_db_impl.h Deprecate raw DB pointer in public APIs (#13311) 2025-01-17 13:33:25 -08:00
db_impl.cc Support GetFileSize API in FSRandomAccessFile (#13676) 2025-07-09 10:40:28 -07:00
db_impl.h Support GetFileSize API in FSRandomAccessFile (#13676) 2025-07-09 10:40:28 -07:00
db_impl_compaction_flush.cc Remove reductant Compaction parameters (#13777) 2025-07-16 14:06:56 -07:00
db_impl_debug.cc Fix race in accessing MANIFEST number in crash test (#13603) 2025-05-12 15:58:33 -07:00
db_impl_experimental.cc Reduce unnecessary MutableCFOptions copies and parameters (#13301) 2025-01-16 14:10:11 -08:00
db_impl_files.cc Refactor wal related naming and more (#13490) 2025-04-11 10:08:29 -07:00
db_impl_follower.cc Support GetFileSize API in FSRandomAccessFile (#13676) 2025-07-09 10:40:28 -07:00
db_impl_follower.h Implement obsolete file deletion (GC) in follower (#12657) 2024-05-17 19:13:33 -07:00
db_impl_open.cc Support GetFileSize API in FSRandomAccessFile (#13676) 2025-07-09 10:40:28 -07:00
db_impl_readonly.cc Trigger memtable flush based on number of hidden entries scanned (#13523) 2025-04-10 17:53:33 -07:00
db_impl_readonly.h Fix some secondary/read-only DB logic (#13441) 2025-03-07 14:56:45 -08:00
db_impl_secondary.cc Make CompactionPicker::CompactFiles() take earliest_snapshot and snapshot_checker (#13816) 2025-08-05 10:05:02 -07:00
db_impl_secondary.h Support GetFileSize API in FSRandomAccessFile (#13676) 2025-07-09 10:40:28 -07:00
db_impl_write.cc Support concurrent write for vector memtable (#13675) 2025-06-18 17:32:59 -07:00