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

Joseph Lynch edited comment on CASSANDRA-14557 at 7/20/18 8:03 PM:
-------------------------------------------------------------------

[~sumanth.pasupuleti] this looks pretty good to me, this will be super helpful 
for users.

Comments on the patch:
 * Consider making it clearer in the {{default_keyspace_rf}} cassandra.yaml 
comments that users probably want 3 in production not 1 (also probably same for 
minimum)
 * Probably need some docs updates in {{doc/source/cql/ddl.rst}}
 * Unit tests look good to me, have you done any ccm testing just to double 
check the full e2e flow though? I think a dtest is probably overkill for such a 
minor change but a few runs of ccm is probably worth it.
 * Can we leave a breadcrumb on CASSANDRA-13701 that it could use this option?
 * Nitpick: You have some non style conforming comments in the tests (no space 
between // and comment)

I think that the minimum validation still works with CASSANDRA-14303's strategy 
for removing keyspaces where it uses zero since that removal happens before the 
validation I believe.


was (Author: jolynch):
[~sumanth.pasupuleti] this looks pretty good to me, this will be super helpful 
for users.

Comments on the patch:
 * Consider making it clearer in the {{default_keyspace_rf}} cassandra.yaml 
comments that users probably want 3 in production not 1 (also probably same for 
minimum)
 * Probably need some docs updates in {{doc/source/cql/ddl.rst}}
 * Unit tests look good to me, have you done any ccm testing just to double 
check the full e2e flow though? I think a dtest is probably overkill for such a 
minor change but a few runs of ccm is probably worth it.
 * Can we leave a breadcrumb on CASSANDRA-13701 that it could use this option?
 * Can you run the unit tests and link the results here and when a committer 
looks let's run dtests?
 * Nitpick: You have some non style conforming comments in the tests (no space 
between // and comment)

I think that the minimum validation still works with CASSANDRA-14303's strategy 
for removing keyspaces where it uses zero since that removal happens before the 
validation I believe.

> 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
>            Assignee: Sumanth Pasupuleti
>            Priority: Minor
>             Fix For: 4.0
>
>         Attachments: 14557-trunk.txt
>
>
> 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|https://issues.apache.org/jira/browse/CASSANDRA-13701?focusedCommentId=16095662&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-16095662]
>  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: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to