You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Sumanth Pasupuleti (JIRA)" <ji...@apache.org> on 2018/07/03 22:03:02 UTC

[jira] [Created] (CASSANDRA-14557) Consider adding default and required keyspace replication options

Sumanth Pasupuleti created CASSANDRA-14557:
----------------------------------------------

             Summary: Consider adding default and required keyspace replication options
                 Key: CASSANDRA-14557
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-14557
             Project: Cassandra
          Issue Type: Improvement
          Components: Configuration
            Reporter: Sumanth Pasupuleti
             Fix For: 4.0


Ending up with a keyspace of RF=1 is unfortunately pretty easy in C* right now - the system_auth table for example is created with RF=1 (to take into account single node setups afaict from CASSANDRA-5112), and a user can further create a keyspace with RF=1 posing availability and streaming risks (e.g. rebuild).

I propose we add two configuration options in cassandra.yaml:
 # {{default_keyspace_rf}} (default: 1) - If replication factors are not specified, use this number.
 # {{required_minimum_keyspace_rf}} (default: unset) - Prevent users from creating a keyspace with an RF less than what is configured

These settings could further be re-used to:
 * Provide defaults for new keyspaces created with SimpleStrategy or NetworkTopologyStrategy (CASSANDRA-14303)
 * Make the automatic token allocation algorithm interface more intuitive allowing easy use of the new token allocation algorithm.

At the end of the day, if someone really wants to allow RF=1, they simply don’t set the setting. For backwards compatibility the default remains 1 and C* would create with RF=1, and would default to current behavior of allowing any RF on keyspaces.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org