rocksdb/table
Peter Dillinger 78c83ac1ec Publish/support format_version=7, related enhancements (#13713)
Summary:
* Make new format_version=7 a supported setting.
* Fix a bug in compressed_secondary_cache.cc that is newly exercised by custom compression types and showing up in crash test with tiered secondary cache
* Small change to handling of disabled compression in fv=7: use empty compression manager compatibility name.
* Get rid of GetDefaultBuiltinCompressionManager() in public API because it could cause unexpected+unsafe schema change on a user's CompressionManager if built upon the default built-in manager and we add a new built-in schema. Now must be referenced by explicit compression schema version in the public API. (That notion was already exposed in compressed secondary cache API, for better or worse.)
* Improve some error messages for compression misconfiguration
* Improve testing with ObjectLibrary and CompressionManagers
* Improve testing of compression_name table property in BlockBasedTableTest.BlockBasedTableProperties2
* Improve some comments

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

Test Plan: existing and updated tests. Notably, the crash test has already been running with (unpublished) format_version=7

Reviewed By: mszeszko-meta, hx235

Differential Revision: D77035482

Pulled By: pdillinger

fbshipit-source-id: 95278de8734a79706a22361bff2184b1edb230ca
2025-06-20 17:39:47 -07:00
..
adaptive Standardize on clang-format version 18 (#13233) 2024-12-19 10:58:40 -08:00
block_based Publish/support format_version=7, related enhancements (#13713) 2025-06-20 17:39:47 -07:00
cuckoo Standardize on clang-format version 18 (#13233) 2024-12-19 10:58:40 -08:00
plain Verify compaction output record count (#13455) 2025-03-18 18:40:33 -07:00
block_fetcher.cc propagate request_id from app -> Rocks -> FS (#13616) 2025-05-16 21:25:50 -07:00
block_fetcher.h Experimental, preliminary support for custom CompressionManager (#13626) 2025-05-21 10:09:46 -07:00
block_fetcher_test.cc Big refactor for preliminary custom compression API (#13540) 2025-05-15 17:14:23 -07:00
cleanable_test.cc Eliminate unnecessary (slow) block cache Ref()ing in MultiGet (#9899) 2022-04-26 21:59:24 -07:00
compaction_merging_iterator.cc Track the total number of compaction sorted runs from inside CompactionMergingIterator (#13325) 2025-02-06 13:25:51 -08:00
compaction_merging_iterator.h Track the total number of compaction sorted runs from inside CompactionMergingIterator (#13325) 2025-02-06 13:25:51 -08:00
external_table.cc Change NewExternalTableFactory to return unique_ptr (#13705) 2025-06-17 10:50:33 -07:00
format.cc Preliminary support for custom compression algorithms (#13659) 2025-06-16 14:19:03 -07:00
format.h Publish/support format_version=7, related enhancements (#13713) 2025-06-20 17:39:47 -07:00
get_context.cc Fix kBlockCacheTier read when merge-chain base value is in a blob file (#12462) 2024-03-21 12:38:53 -07:00
get_context.h Fix kBlockCacheTier read when merge-chain base value is in a blob file (#12462) 2024-03-21 12:38:53 -07:00
internal_iterator.h Multi scan API (#13473) 2025-04-02 16:07:56 -07:00
iter_heap.h Format files under table/ by clang-format (#10852) 2022-10-25 11:50:38 -07:00
iterator.cc Fix a bug for surfacing write unix time (#13057) 2024-10-08 11:31:51 -07:00
iterator_wrapper.h Multi scan API (#13473) 2025-04-02 16:07:56 -07:00
merger_test.cc internal_repo_rocksdb (435146444452818992) (#12115) 2023-12-01 11:15:17 -08:00
merging_iterator.cc Multi scan API (#13473) 2025-04-02 16:07:56 -07:00
merging_iterator.h Fix possible double-free on TruncatedRangeDelIterator (#12805) 2024-06-24 11:51:16 -07:00
meta_blocks.cc propagate request_id from app -> Rocks -> FS (#13616) 2025-05-16 21:25:50 -07:00
meta_blocks.h Fix external table ingestion workflow (#13608) 2025-05-16 14:41:51 -07:00
mock_table.cc Record newest_key_time as a table property (#13083) 2024-11-01 10:08:35 -07:00
mock_table.h Record newest_key_time as a table property (#13083) 2024-11-01 10:08:35 -07:00
multiget_context.h Delete max_write_buffer_number_to_maintain (#13491) 2025-04-07 21:44:36 -07:00
persistent_cache_helper.cc Remove extra semi colon from internal_repo_rocksdb/repo/db/table_cache_sync_and_async.h 2024-03-04 06:34:44 -08:00
persistent_cache_helper.h Change internal headers with duplicate names (#11408) 2023-05-17 11:27:09 -07:00
persistent_cache_options.h Change internal headers with duplicate names (#11408) 2023-05-17 11:27:09 -07:00
sst_file_dumper.cc Preliminary support for custom compression algorithms (#13659) 2025-06-16 14:19:03 -07:00
sst_file_dumper.h Standardize on clang-format version 18 (#13233) 2024-12-19 10:58:40 -08:00
sst_file_reader.cc Preliminary support for custom compression algorithms (#13659) 2025-06-16 14:19:03 -07:00
sst_file_reader_test.cc Bugfix: Ensure statuses are initialized with OK() in SSTFileReader::MultiGet (#13411) 2025-02-19 19:38:53 -08:00
sst_file_writer.cc Standardize on clang-format version 18 (#13233) 2024-12-19 10:58:40 -08:00
sst_file_writer_collectors.h Add CompactForTieringCollector to support automatically trigger compaction for tiering use case (#12760) 2024-06-18 10:51:29 -07:00
table_builder.h Preliminary support for custom compression algorithms (#13659) 2025-06-16 14:19:03 -07:00
table_factory.cc Remove FactoryFunc from LoadXXXObject (#11203) 2023-02-17 12:54:07 -08:00
table_iterator.h Add support in SstFileReader to get a raw table iterator (#12385) 2024-04-02 21:23:06 -07:00
table_properties.cc Record newest_key_time as a table property (#13083) 2024-11-01 10:08:35 -07:00
table_properties_internal.h Improve / clean up meta block code & integrity (#9163) 2021-11-18 11:43:44 -08:00
table_reader.h Deshim coro in fbcode/internal_repo_rocksdb 2024-09-14 09:48:21 -07:00
table_reader_bench.cc Preliminary support for custom compression algorithms (#13659) 2025-06-16 14:19:03 -07:00
table_test.cc Publish/support format_version=7, related enhancements (#13713) 2025-06-20 17:39:47 -07:00
two_level_iterator.cc internal_repo_rocksdb (435146444452818992) (#12115) 2023-12-01 11:15:17 -08:00
two_level_iterator.h Remove unnecessary, confusing 'extern' (#12300) 2024-01-29 10:38:08 -08:00
unique_id.cc internal_repo_rocksdb (435146444452818992) (#12115) 2023-12-01 11:15:17 -08:00
unique_id_impl.h Derive cache keys from SST unique IDs (#10394) 2022-08-12 13:49:49 -07:00