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

marcuse pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git


The following commit(s) were added to refs/heads/trunk by this push:
     new 6111a60ad6 Introduce metadata serialization version V4
6111a60ad6 is described below

commit 6111a60ad68725f1a318a2301788ec50023d4c85
Author: Marcus Eriksson <marc...@apache.org>
AuthorDate: Mon Sep 30 19:42:12 2024 +0200

    Introduce metadata serialization version V4
    
    Patch by marcuse; reviewed by Stefan Miklosovic for CASSANDRA-19970
---
 CHANGES.txt                                                   |  1 +
 src/java/org/apache/cassandra/schema/TableParams.java         | 10 +++++-----
 src/java/org/apache/cassandra/tcm/membership/NodeVersion.java |  2 +-
 src/java/org/apache/cassandra/tcm/serialization/Version.java  |  5 ++++-
 4 files changed, 11 insertions(+), 7 deletions(-)

diff --git a/CHANGES.txt b/CHANGES.txt
index c31bf70162..5a60651cfc 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 5.1
+ * Introduce metadata serialization version V4 (CASSANDRA-19970)
  * Allow CMS reconfiguration to work around DOWN nodes (CASSANDRA-19943)
  * Make TableParams.Serializer set allowAutoSnapshots and incrementalBackups 
(CASSANDRA-19954)
  * Make sstabledump possible to show tombstones only (CASSANDRA-19939)
diff --git a/src/java/org/apache/cassandra/schema/TableParams.java 
b/src/java/org/apache/cassandra/schema/TableParams.java
index 1c68c8e977..2da45e5f97 100644
--- a/src/java/org/apache/cassandra/schema/TableParams.java
+++ b/src/java/org/apache/cassandra/schema/TableParams.java
@@ -510,7 +510,7 @@ public final class TableParams
             serializeMapBB(t.extensions, out);
             out.writeBoolean(t.cdc);
             out.writeUTF(t.readRepair.name());
-            if (version.isAtLeast(Version.V3))
+            if (version.isAtLeast(Version.V4))
             {
                 out.writeBoolean(t.allowAutoSnapshot);
                 out.writeBoolean(t.incrementalBackups);
@@ -537,8 +537,8 @@ public final class TableParams
                    .extensions(deserializeMapBB(in))
                    .cdc(in.readBoolean())
                    .readRepair(ReadRepairStrategy.fromString(in.readUTF()))
-                   .allowAutoSnapshot(!version.isAtLeast(Version.V3) || 
in.readBoolean())
-                   .incrementalBackups(!version.isAtLeast(Version.V3) || 
in.readBoolean());
+                   .allowAutoSnapshot(!version.isAtLeast(Version.V4) || 
in.readBoolean())
+                   .incrementalBackups(!version.isAtLeast(Version.V4) || 
in.readBoolean());
             return builder.build();
         }
 
@@ -561,8 +561,8 @@ public final class TableParams
                    serializedSizeMapBB(t.extensions) +
                    sizeof(t.cdc) +
                    sizeof(t.readRepair.name()) +
-                   (version.isAtLeast(Version.V3) ? 
sizeof(t.allowAutoSnapshot) : 0) +
-                   (version.isAtLeast(Version.V3) ? 
sizeof(t.incrementalBackups) : 0);
+                   (version.isAtLeast(Version.V4) ? 
sizeof(t.allowAutoSnapshot) : 0) +
+                   (version.isAtLeast(Version.V4) ? 
sizeof(t.incrementalBackups) : 0);
         }
 
         private void serializeMap(Map<String, String> map, DataOutputPlus out) 
throws IOException
diff --git a/src/java/org/apache/cassandra/tcm/membership/NodeVersion.java 
b/src/java/org/apache/cassandra/tcm/membership/NodeVersion.java
index 2d8523adfb..9ce9f46021 100644
--- a/src/java/org/apache/cassandra/tcm/membership/NodeVersion.java
+++ b/src/java/org/apache/cassandra/tcm/membership/NodeVersion.java
@@ -34,7 +34,7 @@ import static 
org.apache.cassandra.db.TypeSizes.sizeofUnsignedVInt;
 public class NodeVersion implements Comparable<NodeVersion>
 {
     public static final Serializer serializer = new Serializer();
-    public static final Version CURRENT_METADATA_VERSION = Version.V3;
+    public static final Version CURRENT_METADATA_VERSION = Version.V4;
     public static final NodeVersion CURRENT = new NodeVersion(new 
CassandraVersion(FBUtilities.getReleaseVersionString()), 
CURRENT_METADATA_VERSION);
     private static final CassandraVersion SINCE_VERSION = 
CassandraVersion.CASSANDRA_5_0;
 
diff --git a/src/java/org/apache/cassandra/tcm/serialization/Version.java 
b/src/java/org/apache/cassandra/tcm/serialization/Version.java
index 108348a504..7c6177dcf6 100644
--- a/src/java/org/apache/cassandra/tcm/serialization/Version.java
+++ b/src/java/org/apache/cassandra/tcm/serialization/Version.java
@@ -39,10 +39,13 @@ public enum Version
      */
     V2(2),
     /**
-     *  - Serialize allowAutoSnapshot and incrementalBackups when serializing 
TableParams
      * - down nodes serialized in PrepareCMSReconfiguration
      */
     V3(3),
+    /**
+     * - Serialize allowAutoSnapshot and incrementalBackups when serializing 
TableParams
+     */
+    V4(4),
 
     UNKNOWN(Integer.MAX_VALUE);
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to