https://gitcode.net/kvdb/rocksdb/-/commit/30a98ee1594a35d802e40da34485dc56fa698664Make `rocksdb_options_add_compact_on_deletion_collector_factory` backward com...2023-07-09T13:28:03-07:00Changyu Bichangyubi@meta.com
Summary:
<a href="https://github.com/facebook/rocksdb/issues/11542" rel="nofollow noreferrer noopener" target="_blank">https://github.com/facebook/rocksdb/issues/11542</a> added a parameter to the C API `rocksdb_options_add_compact_on_deletion_collector_factory` which causes some internal builds to fail. External users using this API would also require code change. Making the API backward compatible by restoring the old C API and add the parameter to a new C API `rocksdb_options_add_compact_on_deletion_collector_factory_del_ratio`.
Also updated change log for 8.4 and will backport this change to 8.4 branch once landed.
Pull Request resolved: <a href="https://github.com/facebook/rocksdb/pull/11593" rel="nofollow noreferrer noopener" target="_blank">https://github.com/facebook/rocksdb/pull/11593</a>
Test Plan: `make c_test && ./c_test`
Reviewed By: akankshamahajan15
Differential Revision: D47299555
Pulled By: cbi42
fbshipit-source-id: 517dc093ef4cf02cac2fe4af4f1af13754bbda63https://gitcode.net/kvdb/rocksdb/-/commit/2aed669e36f9097df21322a3f8fd53d44e63b8bcUpdate version to 8.4.12023-07-09T13:35:00-07:00akankshamahajanakankshamahajan@fb.com
Summary:
Test Plan:
Reviewers:
Subscribers:
Tasks:
Tags:
* Add `WriteBatch::Release()` that releases the batch's serialized data to the caller.
### Public API Changes
* Add parameter `deletion_ratio` to C API `rocksdb_options_add_compact_on_deletion_collector_factory`.
* Add C API `rocksdb_options_add_compact_on_deletion_collector_factory_del_ratio`.
* change the FileSystem::use_async_io() API to SupportedOps API in order to extend it to various operations supported by underlying FileSystem. Right now it contains FSSupportedOps::kAsyncIO and FSSupportedOps::kFSBuffer. More details about FSSupportedOps in filesystem.h
* Add new tickers: `rocksdb.error.handler.bg.error.count`, `rocksdb.error.handler.bg.io.error.count`, `rocksdb.error.handler.bg.retryable.io.error.count` to replace the misspelled ones: `rocksdb.error.handler.bg.errro.count`, `rocksdb.error.handler.bg.io.errro.count`, `rocksdb.error.handler.bg.retryable.io.errro.count` ('error' instead of 'errro'). Users should switch to use the new tickers before 9.0 release as the misspelled old tickers will be completely removed then.
* Overload the API CreateColumnFamilyWithImport() to support creating ColumnFamily by importing multiple ColumnFamilies It requires that CFs should not overlap in user key range.