[ 
https://issues.apache.org/jira/browse/CASSANDRA-20118?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17903384#comment-17903384
 ] 

Stefan Miklosovic edited comment on CASSANDRA-20118 at 12/5/24 1:55 PM:
------------------------------------------------------------------------

{code}
INFO  [main] 2024-12-05 12:20:38,809 SystemKeyspaceMigrator41.java:213 - 
peer_events_v2 table was empty, migrating legacy peer_events, if this fails you 
should fix the issue and then truncate peer_events_v2 to have it try again.
INFO  [main] 2024-12-05 12:20:38,857 SystemKeyspaceMigrator41.java:225 - 
Migrating rows from legacy peer_events to peer_events_v2
INFO  [main] 2024-12-05 12:20:38,857 SystemKeyspaceMigrator41.java:234 - 
Migrated 0 rows from legacy peer_events to peer_events_v2
INFO  [main] 2024-12-05 12:20:38,858 SystemKeyspaceMigrator41.java:213 - 
transferred_ranges_v2 table was empty, migrating legacy transferred_ranges, if 
this fails you should fix the issue and then truncate transferred_ranges_v2 to 
have it try again.
INFO  [main] 2024-12-05 12:20:38,860 SystemKeyspaceMigrator41.java:225 - 
Migrating rows from legacy transferred_ranges to transferred_ranges_v2
INFO  [main] 2024-12-05 12:20:38,860 SystemKeyspaceMigrator41.java:234 - 
Migrated 0 rows from legacy transferred_ranges to transferred_ranges_v2
INFO  [main] 2024-12-05 12:20:38,865 SystemKeyspaceMigrator41.java:213 - 
available_ranges_v2 table was empty, migrating legacy available_ranges, if this 
fails you should fix the issue and then truncate available_ranges_v2 to have it 
try again.
INFO  [main] 2024-12-05 12:20:38,875 SystemKeyspaceMigrator41.java:225 - 
Migrating rows from legacy available_ranges to available_ranges_v2
INFO  [main] 2024-12-05 12:20:38,875 SystemKeyspaceMigrator41.java:234 - 
Migrated 0 rows from legacy available_ranges to available_ranges_v2
INFO  [main] 2024-12-05 12:20:38,876 SystemKeyspaceMigrator41.java:213 - 
compaction_history table was empty, migrating legacy compaction_history, if 
this fails you should fix the issue and then truncate compaction_history to 
have it try again.
INFO  [main] 2024-12-05 12:20:38,899 SystemKeyspaceMigrator41.java:225 - 
Migrating rows from legacy compaction_history to compaction_history
INFO  [main] 2024-12-05 12:20:38,926 SystemKeyspaceMigrator41.java:234 - 
Migrated 2 rows from legacy compaction_history to compaction_history
{code}

that's migrator in action. You would need to remove compaction_properties 
column from compaction_history table as shown in that patch I linked earlier. 
Once done, I bet that the schema version would be same as it is on your old 4.1 
nodes. (If I have not overlook any other schema modification in 5.0)

(1) 
https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/db/SystemKeyspaceMigrator41.java#L67


was (Author: smiklosovic):
{code}
INFO  [main] 2024-12-05 12:20:38,809 SystemKeyspaceMigrator41.java:213 - 
peer_events_v2 table was empty, migrating legacy peer_events, if this fails you 
should fix the issue and then truncate peer_events_v2 to have it try again.
INFO  [main] 2024-12-05 12:20:38,857 SystemKeyspaceMigrator41.java:225 - 
Migrating rows from legacy peer_events to peer_events_v2
INFO  [main] 2024-12-05 12:20:38,857 SystemKeyspaceMigrator41.java:234 - 
Migrated 0 rows from legacy peer_events to peer_events_v2
INFO  [main] 2024-12-05 12:20:38,858 SystemKeyspaceMigrator41.java:213 - 
transferred_ranges_v2 table was empty, migrating legacy transferred_ranges, if 
this fails you should fix the issue and then truncate transferred_ranges_v2 to 
have it try again.
INFO  [main] 2024-12-05 12:20:38,860 SystemKeyspaceMigrator41.java:225 - 
Migrating rows from legacy transferred_ranges to transferred_ranges_v2
INFO  [main] 2024-12-05 12:20:38,860 SystemKeyspaceMigrator41.java:234 - 
Migrated 0 rows from legacy transferred_ranges to transferred_ranges_v2
INFO  [main] 2024-12-05 12:20:38,865 SystemKeyspaceMigrator41.java:213 - 
available_ranges_v2 table was empty, migrating legacy available_ranges, if this 
fails you should fix the issue and then truncate available_ranges_v2 to have it 
try again.
INFO  [main] 2024-12-05 12:20:38,875 SystemKeyspaceMigrator41.java:225 - 
Migrating rows from legacy available_ranges to available_ranges_v2
INFO  [main] 2024-12-05 12:20:38,875 SystemKeyspaceMigrator41.java:234 - 
Migrated 0 rows from legacy available_ranges to available_ranges_v2
INFO  [main] 2024-12-05 12:20:38,876 SystemKeyspaceMigrator41.java:213 - 
compaction_history table was empty, migrating legacy compaction_history, if 
this fails you should fix the issue and then truncate compaction_history to 
have it try again.
INFO  [main] 2024-12-05 12:20:38,899 SystemKeyspaceMigrator41.java:225 - 
Migrating rows from legacy compaction_history to compaction_history
INFO  [main] 2024-12-05 12:20:38,926 SystemKeyspaceMigrator41.java:234 - 
Migrated 2 rows from legacy compaction_history to compaction_history
{code}

that's migrator in action. You would need to remove compaction_properties 
column from compaction_history table as shown in that patch I linked earlier. 
Once done, I bet that the schema version would be same as it is on your old 4.1 
nodes. 

(1) 
https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/db/SystemKeyspaceMigrator41.java#L67

> Hints ignored during Upgrade from C*4 to C*5
> --------------------------------------------
>
>                 Key: CASSANDRA-20118
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-20118
>             Project: Apache Cassandra
>          Issue Type: Bug
>          Components: Consistency/Hints
>            Reporter: Paul Chandler
>            Priority: Normal
>             Fix For: 5.0.x
>
>         Attachments: 5-0system.log
>
>
> I have discovered that some hints were not being processed after nodes come 
> back up when a cluster in in a mixed mode with some cassandra 4 nodes and 
> some cassdandra 5 nodes ( these with a storage compatibility mode CASSANDRA_4 
> )
>  
> When in this mode there is a schema mismatch after the first node has been 
> upgraded, which continues until the last node has been upgraded.
> It seems that the hints are blocked from being sent if there is a schema 
> mismatch between the 2 nodes, that can be seen at this line. 
> [cassandra/src/java/org/apache/cassandra/hints/HintsDispatchTrigger.java at 
> cassandra-5.0 · 
> apache/cassandra|https://github.com/apache/cassandra/blob/cassandra-5.0/src/java/org/apache/cassandra/hints/HintsDispatchTrigger.java#L65]
> I have tested removing this line, and that then does allow the hint to be 
> transferred normally. However I am not sure of the implications for doing 
> that if the hint is for part of the schema where the actual mismatch occurs.
>  
> This creates the problem when a node is being upgraded and is currently down, 
> hint files will be created for it on the new cassandra 5 nodes and the old 
> cassandra 4 nodes, but the hint files on the old cassandra 4 nodes will not 
> be processed, due to the schema mismatch. Leading to potential data loss. 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

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

Reply via email to