tolbertam commented on code in PR #4558:
URL: https://github.com/apache/cassandra/pull/4558#discussion_r2836727648


##########
src/java/org/apache/cassandra/cql3/statements/schema/TableAttributes.java:
##########
@@ -58,6 +59,10 @@ public final class TableAttributes extends 
PropertyDefinitions
     public void validate()
     {
         validate(validKeywords, obsoleteKeywords);
+
+        if (hasOption(AUTO_REPAIR) && 
!CassandraRelevantProperties.AUTOREPAIR_ENABLE.getBoolean())

Review Comment:
   It looks like if someone were to make a change to the `auto_repair` config 
on a table it does prevent a node from starting up because of an unknown column 
in the serialization header:
   
   
   > ERROR [SSTableBatchOpen:1] 2026-02-21T22:14:11,365 
DefaultFSErrorHandler.java:129 - Exiting forcefully due to file system 
exception on startup, disk failure policy "stop"                                
                                                     
org.apache.cassandra.io.sstable.CorruptSSTableException: Corrupted: 
/Users/tolbertam/.ccm/auto_repair_off/node2/data0/system_schema/tables-afddfb9dbc1e30688056eed6c302ba09/nb-17-big
                                                                                
  at 
org.apache.cassandra.io.sstable.format.SSTableReaderLoadingBuilder.build(SSTableReaderLoadingBuilder.java:111)
                                                                                
                                                              at 
org.apache.cassandra.io.sstable.format.SSTableReader.open(SSTableReader.java:415)
                                                                                
                                                        
                                    at 
org.apache.cassandra.io.sstable.format.SSTableReader.open(SSTableReader.java:371)
                                                                                
                                                                                
           at 
org.apache.cassandra.io.sstable.format.SSTableReader.lambda$openAll$4(SSTableReader.java:432)
                                                                                
                                                                               
at org.apache.cassandra.concurrent.FutureTask$2.call(FutureTask.java:124)       
                                                                                
                                                                                
               at 
org.apache.cassandra.concurrent.FutureTask.call(FutureTask.java:61)             
                                                                                
                                  
                                                           at 
org.apache.cassandra.concurrent.FutureTask.run(FutureTask.java:71)              
                                                                                
                                                                                
            at 
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
                                                                                
                                                                                
   at 
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
                                                                                
                                                                                
   at 
io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
                                                                                
      
                                                                                
  at java.base/java.lang.Thread.run(Thread.java:840)                            
                                                                                
                                                                                
         Caused by: java.lang.IllegalArgumentException: 
org.apache.cassandra.exceptions.UnknownColumnException: Unknown column 
auto_repair during deserialization
           at 
org.apache.cassandra.io.sstable.format.StatsComponent.serializationHeader(StatsComponent.java:89)
                                                                                
                                                                           at 
org.apache.cassandra.io.sstable.format.big.BigSSTableReaderLoadingBuilder.openComponents(BigSSTableReaderLoadingBuilder.java:78)
           at 
org.apache.cassandra.io.sstable.format.big.BigSSTableReaderLoadingBuilder.openComponents(BigSSTableReaderLoadingBuilder.java:58)
                                                                                
                                            at 
org.apache.cassandra.io.sstable.format.SSTableReaderLoadingBuilder.build(SSTableReaderLoadingBuilder.java:92)
           ... 10 common frames omitted
   Caused by: org.apache.cassandra.exceptions.UnknownColumnException: Unknown 
column auto_repair during deserialization
           at 
org.apache.cassandra.db.SerializationHeader$Component.toHeader(SerializationHeader.java:325)
           at 
org.apache.cassandra.io.sstable.format.StatsComponent.serializationHeader(StatsComponent.java:85)
           ... 13 common frames omitted
   
   If I then add the flag back the node starts up fine.



-- 
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