You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kafka.apache.org by ca...@apache.org on 2022/11/16 12:42:18 UTC

[kafka] 02/02: [KAFKA-14324] Upgrade RocksDB to 7.1.2 (#12809)

This is an automated email from the ASF dual-hosted git repository.

cadonna pushed a commit to branch 3.1
in repository https://gitbox.apache.org/repos/asf/kafka.git

commit ee3237a0fa29c112414e7df3972b82a99913e7bd
Author: Christo Lolov <lo...@amazon.com>
AuthorDate: Sat Nov 12 01:48:38 2022 +0000

    [KAFKA-14324] Upgrade RocksDB to 7.1.2 (#12809)
    
    Reviewers: Bruno Cadonna <ca...@confluent.io>, Anna Sophie Blee-Goldman <ab...@apache.org>
---
 gradle/dependencies.gradle                         |  2 +-
 ...tionsToDbOptionsColumnFamilyOptionsAdapter.java | 68 ++++++++++++++++++----
 2 files changed, 57 insertions(+), 13 deletions(-)

diff --git a/gradle/dependencies.gradle b/gradle/dependencies.gradle
index 951c2491f2e..c92843b4b6f 100644
--- a/gradle/dependencies.gradle
+++ b/gradle/dependencies.gradle
@@ -107,7 +107,7 @@ versions += [
   powermock: "2.0.9",
   reflections: "0.9.12",
   reload4j: "1.2.19",
-  rocksDB: "6.27.3",
+  rocksDB: "7.1.2",
   scalaCollectionCompat: "2.4.4",
   scalafmt: "2.7.5",
   scalaJava8Compat : "1.0.0",
diff --git a/streams/src/main/java/org/apache/kafka/streams/state/internals/RocksDBGenericOptionsToDbOptionsColumnFamilyOptionsAdapter.java b/streams/src/main/java/org/apache/kafka/streams/state/internals/RocksDBGenericOptionsToDbOptionsColumnFamilyOptionsAdapter.java
index de4c62bea5a..50f21322a10 100644
--- a/streams/src/main/java/org/apache/kafka/streams/state/internals/RocksDBGenericOptionsToDbOptionsColumnFamilyOptionsAdapter.java
+++ b/streams/src/main/java/org/apache/kafka/streams/state/internals/RocksDBGenericOptionsToDbOptionsColumnFamilyOptionsAdapter.java
@@ -338,14 +338,21 @@ public class RocksDBGenericOptionsToDbOptionsColumnFamilyOptionsAdapter extends
     }
 
     @Deprecated
-    @Override
     public void setBaseBackgroundCompactions(final int baseBackgroundCompactions) {
-        dbOptions.setBaseBackgroundCompactions(baseBackgroundCompactions);
+        final String message = "This method has been removed from the underlying RocksDB. " +
+                "It was not affecting compaction even in earlier versions. " +
+                "It is currently a no-op method. " +
+                "RocksDB decides the number of background compactions based on the maxBackgroundJobs(...) method";
+        log.warn(message);
+        // no-op
     }
 
-    @Override
+    @Deprecated
     public int baseBackgroundCompactions() {
-        return dbOptions.baseBackgroundCompactions();
+        final String message = "This method has been removed from the underlying RocksDB. " +
+                "It is currently a no-op method which returns a default value of -1.";
+        log.warn(message);
+        return -1;
     }
 
     @Deprecated
@@ -610,15 +617,21 @@ public class RocksDBGenericOptionsToDbOptionsColumnFamilyOptionsAdapter extends
         return dbOptions.accessHintOnCompactionStart();
     }
 
-    @Override
+    @Deprecated
     public Options setNewTableReaderForCompactionInputs(final boolean newTableReaderForCompactionInputs) {
-        dbOptions.setNewTableReaderForCompactionInputs(newTableReaderForCompactionInputs);
+        final String message = "This method has been removed from the underlying RocksDB. " +
+                "It was not affecting compaction even in earlier versions. " +
+                "It is currently a no-op method.";
+        log.warn(message);
         return this;
     }
 
-    @Override
+    @Deprecated
     public boolean newTableReaderForCompactionInputs() {
-        return dbOptions.newTableReaderForCompactionInputs();
+        final String message = "This method has been removed from the underlying RocksDB. " +
+                "It is now a method which always returns false.";
+        log.warn(message);
+        return false;
     }
 
     @Override
@@ -1486,15 +1499,24 @@ public class RocksDBGenericOptionsToDbOptionsColumnFamilyOptionsAdapter extends
         return dbOptions.allowIngestBehind();
     }
 
-    @Override
+    @Deprecated
     public Options setPreserveDeletes(final boolean preserveDeletes) {
-        dbOptions.setPreserveDeletes(preserveDeletes);
+        final String message = "This method has been removed from the underlying RocksDB. " +
+                "It was marked for deprecation in earlier versions. " +
+                "The behaviour can be replicated by using user-defined timestamps. " +
+                "It is currently a no-op method.";
+        log.warn(message);
+        // no-op
         return this;
     }
 
-    @Override
+    @Deprecated
     public boolean preserveDeletes() {
-        return dbOptions.preserveDeletes();
+        final String message = "This method has been removed from the underlying RocksDB. " +
+                "It was marked for deprecation in earlier versions. " +
+                "It is currently a no-op method with a default value of false.";
+        log.warn(message);
+        return false;
     }
 
     @Override
@@ -1685,6 +1707,28 @@ public class RocksDBGenericOptionsToDbOptionsColumnFamilyOptionsAdapter extends
         return this;
     }
 
+    @Override
+    public Options setBlobCompactionReadaheadSize(final long blobCompactionReadaheadSize) {
+        columnFamilyOptions.setBlobCompactionReadaheadSize(blobCompactionReadaheadSize);
+        return this;
+    }
+
+    @Override
+    public long blobCompactionReadaheadSize() {
+        return columnFamilyOptions.blobCompactionReadaheadSize();
+    }
+
+    @Override
+    public Options setMemtableWholeKeyFiltering(final boolean memtableWholeKeyFiltering) {
+        columnFamilyOptions.setMemtableWholeKeyFiltering(memtableWholeKeyFiltering);
+        return this;
+    }
+
+    @Override
+    public boolean memtableWholeKeyFiltering() {
+        return columnFamilyOptions.memtableWholeKeyFiltering();
+    }
+
     //
     // BEGIN options for blobs (integrated BlobDB)
     //