diff --git a/HISTORY.md b/HISTORY.md index ec4ce1504..6e25dbde3 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -1,5 +1,9 @@ # Rocksdb Change Log ## Unreleased +### Behavior Changes +* Added API comments clarifying safe usage of Disable/EnableManualCompaction and EventListener callbacks for compaction. + +## 6.21.0 (2021-05-21) ### Bug Fixes * Fixed a bug in handling file rename error in distributed/network file systems when the server succeeds but client returns error. The bug can cause CURRENT file to point to non-existing MANIFEST file, thus DB cannot be opened. * Fixed a bug where ingested files were written with incorrect boundary key metadata. In rare cases this could have led to a level's files being wrongly ordered and queries for the boundary keys returning wrong results. @@ -12,7 +16,6 @@ ### Behavior Changes * Due to the fix of false-postive alert of "SST file is ahead of WAL", all the CFs with no SST file (CF empty) will bypass the consistency check. We fixed a false-positive, but introduced a very rare true-negative which will be triggered in the following conditions: A CF with some delete operations in the last a few queries which will result in an empty CF (those are flushed to SST file and a compaction triggered which combines this file and all other SST files and generates an empty CF, or there is another reason to write a manifest entry for this CF after a flush that generates no SST file from an empty CF). The deletion entries are logged in a WAL and this WAL was corrupted, while the CF's log number points to the next WAL (due to the flush). Therefore, the DB can only recover to the point without these trailing deletions and cause the inconsistent DB status. -* Added API comments clarifying safe usage of Disable/EnableManualCompaction and EventListener callbacks for compaction. ### New Features * Add new option allow_stall passed during instance creation of WriteBufferManager. When allow_stall is set, WriteBufferManager will stall all writers shared across multiple DBs and columns if memory usage goes beyond specified WriteBufferManager::buffer_size (soft limit). Stall will be cleared when memory is freed after flush and memory usage goes down below buffer_size. diff --git a/include/rocksdb/version.h b/include/rocksdb/version.h index ef3faba2a..b5abc6ea8 100644 --- a/include/rocksdb/version.h +++ b/include/rocksdb/version.h @@ -10,7 +10,7 @@ #include "rocksdb/rocksdb_namespace.h" #define ROCKSDB_MAJOR 6 -#define ROCKSDB_MINOR 20 +#define ROCKSDB_MINOR 21 #define ROCKSDB_PATCH 0 // Do not use these. We made the mistake of declaring macros starting with