Control: tags 1097799 + pending

Dear maintainer,

I've prepared an NMU for rocksdb (versioned as 9.10.0-1.1) and uploaded 
it to DELAYED/2. Please feel free to tell me if I should cancel it.

cu
Adrian
diffstat for rocksdb-9.10.0 rocksdb-9.10.0

 changelog                                                               |    7 +
 patches/0001-Deprecate-RangePtr-favor-new-RangeOpt-and-OptSlice-1.patch |   49 +++++++++
 patches/0002-Fix-build-13579.patch                                      |   52 ++++++++++
 patches/0003-include-cstdint-to-trace_record.h-13651.patch              |   38 +++++++
 patches/series                                                          |    3 
 5 files changed, 149 insertions(+)

diff -Nru rocksdb-9.10.0/debian/changelog rocksdb-9.10.0/debian/changelog
--- rocksdb-9.10.0/debian/changelog	2025-01-25 07:24:20.000000000 +0200
+++ rocksdb-9.10.0/debian/changelog	2026-01-05 22:23:33.000000000 +0200
@@ -1,3 +1,10 @@
+rocksdb (9.10.0-1.1) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * Backport upstream fixes for FTBFS with GCC 15. (Closes: #1097799)
+
+ -- Adrian Bunk <[email protected]>  Mon, 05 Jan 2026 22:23:33 +0200
+
 rocksdb (9.10.0-1) unstable; urgency=medium
 
   * New upstream release 9.10.0, see details at
diff -Nru rocksdb-9.10.0/debian/patches/0001-Deprecate-RangePtr-favor-new-RangeOpt-and-OptSlice-1.patch rocksdb-9.10.0/debian/patches/0001-Deprecate-RangePtr-favor-new-RangeOpt-and-OptSlice-1.patch
--- rocksdb-9.10.0/debian/patches/0001-Deprecate-RangePtr-favor-new-RangeOpt-and-OptSlice-1.patch	1970-01-01 02:00:00.000000000 +0200
+++ rocksdb-9.10.0/debian/patches/0001-Deprecate-RangePtr-favor-new-RangeOpt-and-OptSlice-1.patch	2026-01-05 22:04:45.000000000 +0200
@@ -0,0 +1,49 @@
+From ef035d13f8a74f8eb7789c96b0e631fe4a64962a Mon Sep 17 00:00:00 2001
+From: Peter Dillinger <[email protected]>
+Date: Mon, 24 Mar 2025 17:08:17 -0700
+Subject: Deprecate RangePtr, favor new RangeOpt and OptSlice (#13481)
+
+Summary:
+The new API in https://github.com/facebook/rocksdb/issues/13453 is awkward and precarious because of using RangePtr, which encodes optional keys using raw pointers to Slice. We could use `std::optional<Slice>` instead but that is unsatisfyingly a larger object with an inefficient size (typically 17 bytes).
+
+Here I introduce a custom optional Slice type, `OptSlice`, that is the same size as a Slice, and use it in a number of places to clean up code and make some public APIs easier to work with. This includes
+
+* `atomic_replace_range` (not yet released, OK to change)
+* `GetAllKeyVersions()` which gets a behavior change because of its unusual handling of empty keys.
+* `DeleteFilesInRanges()`
+* TODO in follow-up: `CompactRange()`
+
+Most of the diff is associated updates and refactorings. Also
+
+* Move some relevant things out of db.h to keep it as tidy as possible.
+
+Pull Request resolved: https://github.com/facebook/rocksdb/pull/13481
+
+Test Plan: tests updated
+
+Reviewed By: hx235
+
+Differential Revision: D71747774
+
+Pulled By: pdillinger
+
+fbshipit-source-id: b4c8519608d119b8bceca9bb0fd778608f62a141
+---
+ include/rocksdb/slice.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/include/rocksdb/slice.h b/include/rocksdb/slice.h
+index 0d7eb5949..115131398 100644
+--- a/include/rocksdb/slice.h
++++ b/include/rocksdb/slice.h
+@@ -20,6 +20,7 @@
+ 
+ #include <cassert>
+ #include <cstddef>
++#include <cstdint>
+ #include <cstdio>
+ #include <cstring>
+ #include <string>
+-- 
+2.30.2
+
diff -Nru rocksdb-9.10.0/debian/patches/0002-Fix-build-13579.patch rocksdb-9.10.0/debian/patches/0002-Fix-build-13579.patch
--- rocksdb-9.10.0/debian/patches/0002-Fix-build-13579.patch	1970-01-01 02:00:00.000000000 +0200
+++ rocksdb-9.10.0/debian/patches/0002-Fix-build-13579.patch	2026-01-05 22:04:45.000000000 +0200
@@ -0,0 +1,52 @@
+From b2dc243ebd1989a13ae20289d23ef31f249e6d27 Mon Sep 17 00:00:00 2001
+From: Jay Huh <[email protected]>
+Date: Mon, 28 Apr 2025 13:35:48 -0700
+Subject: Fix build (#13579)
+
+Summary:
+- [Failed CI run](https://productionresultssa17.blob.core.windows.net/actions-results/fd083599-6c98-4aec-8732-fcb280c96021/workflow-job-run-2f73efd7-c93d-53ea-a18f-1c7e17604f7e/logs/job/job-logs.txt?rsct=text%2Fplain&se=2025-04-28T17%3A15%3A01Z&sig=YJevYF5xH4RClY3klBe6Z3tnCWuYZFLlBYRHwftW9lc%3D&ske=2025-04-29T01%3A55%3A36Z&skoid=ca7593d4-ee42-46cd-af88-8b886a2f84eb&sks=b&skt=2025-04-28T13%3A55%3A36Z&sktid=398a6654-997b-47e9-b12b-9515b896b4de&skv=2025-01-05&sp=r&spr=https&sr=b&st=2025-04-28T17%3A04%3A56Z&sv=2025-01-05)
+
+```
+2025-04-28T16:56:00.5775476Z In file included from <stdin>:1:
+2025-04-28T16:56:00.5776056Z db/blob/blob_file_meta.h:28:7: error: 'uint64_t' has not been declared
+2025-04-28T16:56:00.5776715Z    28 |       uint64_t blob_file_number, uint64_t total_blob_count,
+2025-04-28T16:56:00.5777153Z       |       ^~~~~~~~
+2025-04-28T16:56:00.5778083Z db/blob/blob_file_meta.h:15:1: note: 'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
+2025-04-28T16:56:00.5779293Z    14 | #include "rocksdb/rocksdb_namespace.h"
+2025-04-28T16:56:00.5782126Z   +++ |+#include <cstdint>
+2025-04-28T16:56:00.5782780Z    15 |
+2025-04-28T16:56:00.5783204Z db/blob/blob_file_meta.h:28:34: error: 'uint64_t' has not been declared
+2025-04-28T16:56:00.5783832Z    28 |       uint64_t blob_file_number, uint64_t total_blob_count,
+2025-04-28T16:56:00.5784301Z       |                                  ^~~~~~~~
+```
+
+Pull Request resolved: https://github.com/facebook/rocksdb/pull/13579
+
+Test Plan: [CI](https://github.com/facebook/rocksdb/actions/runs/14713618495/job/41291839382?pr=13579)
+
+Reviewed By: archang19, cbi42
+
+Differential Revision: D73799590
+
+Pulled By: jaykorean
+
+fbshipit-source-id: 7ead97914c05958bb7146f1934c48615599bc4f8
+---
+ db/blob/blob_file_meta.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/db/blob/blob_file_meta.h b/db/blob/blob_file_meta.h
+index d7c8a1243..2e47726f8 100644
+--- a/db/blob/blob_file_meta.h
++++ b/db/blob/blob_file_meta.h
+@@ -6,6 +6,7 @@
+ #pragma once
+ 
+ #include <cassert>
++#include <cstdint>
+ #include <iosfwd>
+ #include <memory>
+ #include <string>
+-- 
+2.30.2
+
diff -Nru rocksdb-9.10.0/debian/patches/0003-include-cstdint-to-trace_record.h-13651.patch rocksdb-9.10.0/debian/patches/0003-include-cstdint-to-trace_record.h-13651.patch
--- rocksdb-9.10.0/debian/patches/0003-include-cstdint-to-trace_record.h-13651.patch	1970-01-01 02:00:00.000000000 +0200
+++ rocksdb-9.10.0/debian/patches/0003-include-cstdint-to-trace_record.h-13651.patch	2026-01-05 22:04:45.000000000 +0200
@@ -0,0 +1,38 @@
+From 07d319f46ecc2ac18dbd812d54dc74ada62eaf59 Mon Sep 17 00:00:00 2001
+From: Jiffin Tony Thottan <[email protected]>
+Date: Fri, 13 Jun 2025 09:47:52 -0700
+Subject: include cstdint to trace_record.h (#13651)
+
+Summary:
+There are compilation errors on gcc 15 in fedora 42 while compiling ceph.
+
+This is similar to PR https://github.com/facebook/rocksdb/issues/13573.
+
+Pull Request resolved: https://github.com/facebook/rocksdb/pull/13651
+
+Reviewed By: jaykorean
+
+Differential Revision: D76062855
+
+Pulled By: cbi42
+
+fbshipit-source-id: d213debbda39fdfac01641daa567687fc104d260
+---
+ include/rocksdb/trace_record.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/include/rocksdb/trace_record.h b/include/rocksdb/trace_record.h
+index 8f9c3ee2f..d321f5387 100644
+--- a/include/rocksdb/trace_record.h
++++ b/include/rocksdb/trace_record.h
+@@ -5,6 +5,7 @@
+ 
+ #pragma once
+ 
++#include <cstdint>
+ #include <memory>
+ #include <string>
+ #include <vector>
+-- 
+2.30.2
+
diff -Nru rocksdb-9.10.0/debian/patches/series rocksdb-9.10.0/debian/patches/series
--- rocksdb-9.10.0/debian/patches/series	2025-01-25 07:24:20.000000000 +0200
+++ rocksdb-9.10.0/debian/patches/series	2026-01-05 22:22:58.000000000 +0200
@@ -8,3 +8,6 @@
 arm.patch
 0001-replace-old-sync-with-new-atomic-builtin-equivalents.patch
 rely-on-default-for-optimization-on-Power.patch
+0001-Deprecate-RangePtr-favor-new-RangeOpt-and-OptSlice-1.patch
+0002-Fix-build-13579.patch
+0003-include-cstdint-to-trace_record.h-13651.patch

Reply via email to