From 74b5153fa5d5a78c36b0340f7e7b8728dc47df199dc2b8dc7305e3e0215c4392 Mon Sep 17 00:00:00 2001 From: Andrea Manzini Date: Wed, 6 Sep 2023 07:23:43 +0000 Subject: [PATCH] Accepting request 1109202 from home:amanzini:branches:server:database - update to 8.5.3 * Fixed a race condition in GenericRateLimiter that could cause it to stop granting requests - update to 8.5.2 * Fix a bug where iterator may return incorrect result for DeleteRange() users if there was an error reading from a file. - update to 8.5.1 * Fix a bug where if there is an error reading from offset 0 of a file from L1+ and that the file is not the first file in the sorted run, data can be lost in compaction and read/scan can return incorrect results. - update to 8.5.0 * Public API Changes: Removed recently added APIs GeneralCache and MakeSharedGeneralCache() as our plan changed to stop exposing a general-purpose cache interface. The old forms of these APIs, Cache and NewLRUCache(), are still available, although general-purpose caching support will be dropped eventually. * Behavior Changes Option periodic_compaction_seconds no longer supports FIFO compaction: setting it has no effect on FIFO compactions. FIFO compaction users should only set option ttl instead. Move prefetching responsibility to page cache for compaction read for non directIO use case * Performance Improvements In case of direct_io, if buffer passed by callee is already aligned, RandomAccessFileRead::Read will avoid realloacting a new buffer, reducing memcpy and use already passed aligned buffer. Small efficiency improvement to HyperClockCache by reducing chance of compiler-generated heap allocations * Bug Fixes Fix use_after_free bug in async_io MultiReads when underlying FS enabled kFSBuffer. kFSBuffer is when underlying FS pass their own buffer instead of using RocksDB scratch in FSReadRequest. Right now it's an experimental feature. Fix a bug in FileTTLBooster that can cause users with a large number of levels (more than 65) to see errors like "runtime error: shift exponent .. is too large.." - see more on HISTORY.md (https://github.com/facebook/rocksdb/blob/main/HISTORY.md) OBS-URL: https://build.opensuse.org/request/show/1109202 OBS-URL: https://build.opensuse.org/package/show/server:database/rocksdb?expand=0&rev=20 --- rocksdb-8.0.0-reproducible.patch | 6 +++--- rocksdb-8.0.0-rpath.patch | 6 +++--- rocksdb-8.0.0-shared-liburing.patch | 6 +++--- rocksdb-8.3.2.tar.gz | 3 --- rocksdb-8.5.3.tar.gz | 3 +++ rocksdb.changes | 28 ++++++++++++++++++++++++++++ rocksdb.spec | 2 +- 7 files changed, 41 insertions(+), 13 deletions(-) delete mode 100644 rocksdb-8.3.2.tar.gz create mode 100644 rocksdb-8.5.3.tar.gz diff --git a/rocksdb-8.0.0-reproducible.patch b/rocksdb-8.0.0-reproducible.patch index 8f53612..ec647ab 100644 --- a/rocksdb-8.0.0-reproducible.patch +++ b/rocksdb-8.0.0-reproducible.patch @@ -1,7 +1,7 @@ -Index: rocksdb-8.3.2/Makefile +Index: rocksdb-8.5.3/Makefile =================================================================== ---- rocksdb-8.3.2.orig/Makefile -+++ rocksdb-8.3.2/Makefile +--- rocksdb-8.5.3.orig/Makefile ++++ rocksdb-8.5.3/Makefile @@ -787,9 +787,12 @@ ROCKSDB_PATCH = $(shell grep -E "ROCKSDB # the file needs to already exist or else the build will fail ifndef NO_UPDATE_BUILD_VERSION diff --git a/rocksdb-8.0.0-rpath.patch b/rocksdb-8.0.0-rpath.patch index 196e71a..4d8dae9 100644 --- a/rocksdb-8.0.0-rpath.patch +++ b/rocksdb-8.0.0-rpath.patch @@ -1,7 +1,7 @@ -Index: rocksdb-8.3.2/tools/CMakeLists.txt +Index: rocksdb-8.5.3/tools/CMakeLists.txt =================================================================== ---- rocksdb-8.3.2.orig/tools/CMakeLists.txt -+++ rocksdb-8.3.2/tools/CMakeLists.txt +--- rocksdb-8.5.3.orig/tools/CMakeLists.txt ++++ rocksdb-8.5.3/tools/CMakeLists.txt @@ -1,3 +1,5 @@ +set(CMAKE_SKIP_BUILD_RPATH TRUE) + diff --git a/rocksdb-8.0.0-shared-liburing.patch b/rocksdb-8.0.0-shared-liburing.patch index 9f5f43e..fa53760 100644 --- a/rocksdb-8.0.0-shared-liburing.patch +++ b/rocksdb-8.0.0-shared-liburing.patch @@ -1,7 +1,7 @@ -Index: rocksdb-8.3.2/cmake/modules/Finduring.cmake +Index: rocksdb-8.5.3/cmake/modules/Finduring.cmake =================================================================== ---- rocksdb-8.3.2.orig/cmake/modules/Finduring.cmake -+++ rocksdb-8.3.2/cmake/modules/Finduring.cmake +--- rocksdb-8.5.3.orig/cmake/modules/Finduring.cmake ++++ rocksdb-8.5.3/cmake/modules/Finduring.cmake @@ -7,7 +7,7 @@ find_path(uring_INCLUDE_DIR NAMES liburing.h) diff --git a/rocksdb-8.3.2.tar.gz b/rocksdb-8.3.2.tar.gz deleted file mode 100644 index 476360a..0000000 --- a/rocksdb-8.3.2.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b55d6da6f562eb79bad7fdc9c368efc9ea4bfa239e69cead37923fc845a43fba -size 12713061 diff --git a/rocksdb-8.5.3.tar.gz b/rocksdb-8.5.3.tar.gz new file mode 100644 index 0000000..32d545d --- /dev/null +++ b/rocksdb-8.5.3.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed4230500b9ca20bc7918c32166b2d0d46a8695c59991821daa586d55689d785 +size 12764827 diff --git a/rocksdb.changes b/rocksdb.changes index 20be66d..0cdafb3 100644 --- a/rocksdb.changes +++ b/rocksdb.changes @@ -1,3 +1,31 @@ +------------------------------------------------------------------- +Wed Sep 6 06:44:11 UTC 2023 - Andrea Manzini + +- update to 8.5.3 + * Fixed a race condition in GenericRateLimiter that could cause it to stop granting requests + +- update to 8.5.2 + * Fix a bug where iterator may return incorrect result for DeleteRange() users if there was an error reading from a file. + +- update to 8.5.1 + * Fix a bug where if there is an error reading from offset 0 of a file from L1+ and that the file is not the first file in the sorted run, data can be lost in compaction and read/scan can return incorrect results. + +- update to 8.5.0 + * Public API Changes: + Removed recently added APIs GeneralCache and MakeSharedGeneralCache() as our plan changed to stop exposing a general-purpose cache interface. The old forms of these APIs, Cache and NewLRUCache(), are still available, although general-purpose caching support will be dropped eventually. + * Behavior Changes + Option periodic_compaction_seconds no longer supports FIFO compaction: setting it has no effect on FIFO compactions. FIFO compaction users should only set option ttl instead. + Move prefetching responsibility to page cache for compaction read for non directIO use case + * Performance Improvements + In case of direct_io, if buffer passed by callee is already aligned, RandomAccessFileRead::Read will avoid realloacting a new buffer, reducing memcpy and use already passed aligned buffer. + Small efficiency improvement to HyperClockCache by reducing chance of compiler-generated heap allocations + * Bug Fixes + Fix use_after_free bug in async_io MultiReads when underlying FS enabled kFSBuffer. kFSBuffer is when underlying FS pass their own buffer instead of using RocksDB scratch in FSReadRequest. Right now it's an experimental feature. + Fix a bug in FileTTLBooster that can cause users with a large number of levels (more than 65) to see errors like "runtime error: shift exponent .. is too large.." + +- see more on HISTORY.md (https://github.com/facebook/rocksdb/blob/main/HISTORY.md) + + ------------------------------------------------------------------- Thu Jul 27 13:10:54 UTC 2023 - Andrea Manzini diff --git a/rocksdb.spec b/rocksdb.spec index ef95c7f..6924499 100644 --- a/rocksdb.spec +++ b/rocksdb.spec @@ -20,7 +20,7 @@ %define lib_name librocksdb8 %bcond_with jemalloc Name: rocksdb -Version: 8.3.2 +Version: 8.5.3 Release: 0 Summary: Library for embeddable, persistent and fast key-value store License: (Apache-2.0 OR GPL-2.0-only) AND BSD-2-Clause