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


##########
src/java/org/apache/cassandra/config/CassandraRelevantProperties.java:
##########
@@ -346,6 +346,17 @@ public enum CassandraRelevantProperties
      */
     
GOSSIP_SETTLE_POLL_SUCCESSES_REQUIRED("cassandra.gossip_settle_poll_success_required",
 "3"),
 
+    /**
+     * If set to true, mutations streamed during anti-entropy repair will be 
replayed via the regular write path for associated views.
+     */
+    
STREAMING_REQUIRES_VIEW_BUILD_DURING_REPAIR("cassandra.streaming.requires_view_build_during_repair",
 "true"),

Review Comment:
   This currently prevents startup if trying to configure an incremental repair 
schedule:
   
   ```
   ERROR [main] 2024-11-03 12:48:38,892 CassandraDaemon.java:900 - Fatal 
configuration error
   org.apache.cassandra.exceptions.ConfigurationException: Cannot run 
incremental repair while materialized view replay is enabled.
           at 
org.apache.cassandra.service.AutoRepairService.checkCanRun(AutoRepairService.java:69)
           at 
org.apache.cassandra.repair.autorepair.AutoRepair.setup(AutoRepair.java:128)
           at 
org.apache.cassandra.service.StorageService.doAutoRepairSetup(StorageService.java:1355)
           at 
org.apache.cassandra.service.StorageService.finishJoiningRing(StorageService.java:1326)
           at 
org.apache.cassandra.service.StorageService.joinTokenRing(StorageService.java:1214)
           at 
org.apache.cassandra.service.StorageService.joinTokenRing(StorageService.java:1150)
           at 
org.apache.cassandra.service.StorageService.initServer(StorageService.java:941)
           at 
org.apache.cassandra.service.StorageService.initServer(StorageService.java:859)
           at 
org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:421)
           at 
org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:744)
           at 
org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:878)
   ```
   
   It seems a bit terse to have to set some system properties to run an 
incremental repair schedule, was wondering if we could make this smarter.  
Currently both materialized views and cdc have guardrail properties, 
`materialized_views_enabled` and `cdc_enabled` which both default to false.  
Can we involve these properties somehow?  If they are not set, then we don't 
need to consider either during streaming.



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