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