beobal commented on code in PR #2946:
URL: https://github.com/apache/cassandra/pull/2946#discussion_r1410740538


##########
src/java/org/apache/cassandra/db/commitlog/CommitLogDescriptor.java:
##########
@@ -63,13 +63,14 @@ public class CommitLogDescriptor
     public static final int VERSION_30 = 6;
     public static final int VERSION_40 = 7;
     public static final int VERSION_50 = 8;
+    public static final int VERSION_51 = 9;
 
     /**
      * Increment this number if there is a changes in the commit log disc 
layout or MessagingVersion changes.
      * Note: make sure to handle {@link #getMessagingVersion()}
      */
     @VisibleForTesting
-    public static final int current_version = 
DatabaseDescriptor.getStorageCompatibilityMode().isBefore(5) ? VERSION_40 : 
VERSION_50;
+    public static final int current_version = 
DatabaseDescriptor.getStorageCompatibilityMode().isBefore(5) ? VERSION_40 : 
VERSION_51;

Review Comment:
   I think that we do need a ` CASSANDRA_5(5)` compatibility mode otherwise 
mutations in the commitlog  and hints will contain epochs so downgrading to 5.0 
will not work unless the 5.1 instance uses SCM `CASSANDRA_4`. It may not be 
possible to do this if it previously wrote 5.0 format sstables, so a downgrade 
to 5.0 would only work if the cluster had _always_ been in SCM 4.
   
   Of course, we could punt downgradability & a new SCM mode to a later ticket. 
This versioning bump is needed now though to prevent 5.1 nodes including epochs 
in messages to 5.0 nodes.
   



##########
src/java/org/apache/cassandra/hints/HintsDescriptor.java:
##########
@@ -69,7 +70,7 @@ final class HintsDescriptor
     static final int VERSION_30 = 1;
     static final int VERSION_40 = 2;
     static final int VERSION_50 = 3;
-    static final int CURRENT_VERSION = 
DatabaseDescriptor.getStorageCompatibilityMode().isBefore(5) ? VERSION_40 : 
VERSION_50;
+    static final int CURRENT_VERSION = 
DatabaseDescriptor.getStorageCompatibilityMode().isBefore(5) ? VERSION_40 : 
VERSION_51;

Review Comment:
   Can we add a `HintsDsecriptor::VERSION_51` here. There doesn't seem any real 
point in having these equivalent constants at the moment, but it might be 
confusing if it isn't consistent.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to