Skip to content

Commit 3740fcc

Browse files
cbi42facebook-github-bot
authored andcommitted
Update for next release 10.0 (#13417)
Summary: Updated version, HISTORY, compatibility script and folly hash for 10.0 release. Included a HISTORY.md update backported from 10.0 branch: c1f63e1. Pull Request resolved: #13417 Test Plan: CI Reviewed By: hx235 Differential Revision: D70029393 Pulled By: cbi42 fbshipit-source-id: f8276bb31cc69648b47e0cbcd728d2a33fbf531f
1 parent 4c975a7 commit 3740fcc

16 files changed

+26
-15
lines changed

HISTORY.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,29 @@
11
# Rocksdb Change Log
22
> NOTE: Entries for next release do not go here. Follow instructions in `unreleased_history/README.txt`
33
4+
## 10.0.0 (02/21/2025)
5+
### New Features
6+
* Introduced new `auto_refresh_iterator_with_snapshot` opt-in knob that (when enabled) will periodically release obsolete memory and storage resources for as long as the iterator is making progress and its supplied `read_options.snapshot` was initialized with non-nullptr value.
7+
* Added the ability to plug-in a custom table reader implementation. See include/rocksdb/external_table_reader.h for more details.
8+
* Experimental feature: RocksDB now supports FAISS inverted file based indices via the secondary indexing framework. Applications can use FAISS secondary indices to automatically quantize embeddings and perform K-nearest-neighbors similarity searches. See `FaissIVFIndex` and `SecondaryIndex` for more details. Note: the FAISS integration currently requires using the BUCK build.
9+
* Add new DB property `num_running_compaction_sorted_runs` that tracks the number of sorted runs being processed by currently running compactions
10+
* Experimental feature: added support for simple secondary indices that index the specified column as-is. See `SimpleSecondaryIndex` and `SecondaryIndex` for more details.
11+
* Added new `TransactionDBOptions::txn_commit_bypass_memtable_threshold`, which enables optimized transaction commit (see `TransactionOptions::commit_bypass_memtable`) when the transaction size exceeds a configured threshold.
12+
13+
### Public API Changes
14+
* Updated the query API of the experimental secondary indexing feature by removing the earlier `SecondaryIndex::NewIterator` virtual and adding a `SecondaryIndexIterator` class that can be utilized by applications to find the primary keys for a given search target.
15+
* Added back the ability to leverage the primary key when building secondary index entries. This involved changes to the signatures of `SecondaryIndex::GetSecondary{KeyPrefix,Value}` as well as the addition of a new method `SecondaryIndex::FinalizeSecondaryKeyPrefix`. See the API comments for more details.
16+
* Minimum supported version of ZSTD is now 1.4.0, for code simplification. Obsolete `CompressionType` `kZSTDNotFinalCompression` is also removed.
17+
18+
### Behavior Changes
19+
* `VerifyBackup` in `verify_with_checksum`=`true` mode will now evaluate checksums in parallel. As a result, unlike in case of original implementation, the API won't bail out on a very first corruption / mismatch and instead will iterate over all the backup files logging success / _degree_of_failure_ for each.
20+
* Reversed the order of updates to the same key in WriteBatchWithIndex. This means if there are multiple updates to the same key, the most recent update is ordered first. This affects the output of WBWIIterator. When WriteBatchWithIndex is created with `overwrite_key=true`, this affects the output only if Merge is used (#13387).
21+
* Added support for Merge operations in transactions using option `TransactionOptions::commit_bypass_memtable`.
22+
23+
### Bug Fixes
24+
* Fixed GetMergeOperands() API in ReadOnlyDB and SecondaryDB
25+
* Fix a bug in `GetMergeOperands()` that can return incorrect status (MergeInProgress) and incorrect number of merge operands. This can happen when `GetMergeOperandsOptions::continue_cb` is set, both active and immutable memtables have merge operands and the callback stops the look up at the immutable memtable.
26+
427
## 9.11.0 (01/17/2025)
528
### New Features
629
* Introduce CancelAwaitingJobs() in CompactionService interface which will allow users to implement cancellation of running remote compactions from the primary instance

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2489,7 +2489,7 @@ checkout_folly:
24892489
fi
24902490
@# Pin to a particular version for public CI, so that PR authors don't
24912491
@# need to worry about folly breaking our integration. Update periodically
2492-
cd third-party/folly && git reset --hard f1c1542fb071e9d88181279ec24043400222aef1
2492+
cd third-party/folly && git reset --hard 78286282478e1ae05b2e8cbcf0e2139eab283bea
24932493
@# NOTE: this hack is required for clang in some cases
24942494
perl -pi -e 's/int rv = syscall/int rv = (int)syscall/' third-party/folly/folly/detail/Futex.cpp
24952495
@# NOTE: this hack is required for gcc in some cases

include/rocksdb/version.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
// NOTE: in 'main' development branch, this should be the *next*
1313
// minor or major version number planned for release.
1414
#define ROCKSDB_MAJOR 10
15-
#define ROCKSDB_MINOR 0
15+
#define ROCKSDB_MINOR 1
1616
#define ROCKSDB_PATCH 0
1717

1818
// Do not use these. We made the mistake of declaring macros starting with

tools/check_format_compatible.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ EOF
125125

126126
# To check for DB forward compatibility with loading options (old version
127127
# reading data from new), as well as backward compatibility
128-
declare -a db_forward_with_options_refs=("8.6.fb" "8.7.fb" "8.8.fb" "8.9.fb" "8.10.fb" "8.11.fb" "9.0.fb" "9.1.fb" "9.2.fb" "9.3.fb" "9.4.fb" "9.5.fb" "9.6.fb" "9.7.fb" "9.8.fb" "9.9.fb" "9.10.fb" "9.11.fb")
128+
declare -a db_forward_with_options_refs=("8.6.fb" "8.7.fb" "8.8.fb" "8.9.fb" "8.10.fb" "8.11.fb" "9.0.fb" "9.1.fb" "9.2.fb" "9.3.fb" "9.4.fb" "9.5.fb" "9.6.fb" "9.7.fb" "9.8.fb" "9.9.fb" "9.10.fb" "9.11.fb" "10.0.fb")
129129
# To check for DB forward compatibility without loading options (in addition
130130
# to the "with loading options" set), as well as backward compatibility
131131
declare -a db_forward_no_options_refs=() # N/A at the moment

unreleased_history/behavior_changes/parallelize_backup_verification.md

Lines changed: 0 additions & 1 deletion
This file was deleted.

unreleased_history/behavior_changes/wbwi-ordering.md

Lines changed: 0 additions & 1 deletion
This file was deleted.

unreleased_history/bug_fixes/get_merge_operand_fix.md

Lines changed: 0 additions & 1 deletion
This file was deleted.

unreleased_history/bug_fixes/get_merge_operand_imm.md

Lines changed: 0 additions & 1 deletion
This file was deleted.

unreleased_history/new_features/auto_refresh_iterator.md

Lines changed: 0 additions & 1 deletion
This file was deleted.

unreleased_history/new_features/external_table_reader.md

Lines changed: 0 additions & 1 deletion
This file was deleted.

0 commit comments

Comments
 (0)