[
https://issues.apache.org/jira/browse/CASSANDRA-12681?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15523833#comment-15523833
]
Nachiket Patil commented on CASSANDRA-12681:
--------------------------------------------
Thanks for the review and changes Jeff. Your changes look good, minor comment:
1. I would like to add a CREATE statement instead of ALTER statement in create
tests for valid + invalid DC. We are testing same alter statement in alter
tests.
CreateTest.java
#361
- assertInvalidThrow(ConfigurationException.class, "ALTER KEYSPACE
testABC WITH replication={ 'class' : 'NetworkTopologyStrategy', '" +
DATA_CENTER + "' : 2 , 'INVALID_DC': 1}");
+ assertInvalidThrow(ConfigurationException.class, "CREATE KEYSPACE
testXYZ WITH replication={ 'class' : 'NetworkTopologyStrategy', '" +
DATA_CENTER + "' : 2 , 'INVALID_DC': 1}");
// clean-up
execute("DROP KEYSPACE testABC");
+ execute("DROP KEYSPACE testXYZ");
2. Just thought of quick enhancement: all drop keyspace statements in tests,
add "IF EXISTS" so if something goes wrong, the tests will fail with assertion
failed error instead of "cannot drop keyspace" ConfigurationException.
> Reject empty options and invalid DC names in replication configuration while
> creating or altering a keyspace.
> -------------------------------------------------------------------------------------------------------------
>
> Key: CASSANDRA-12681
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12681
> Project: Cassandra
> Issue Type: Improvement
> Components: Distributed Metadata
> Reporter: Nachiket Patil
> Assignee: Nachiket Patil
> Priority: Minor
> Attachments: trunkpatch.diff, v3.0patch.diff
>
>
> Add some restrictions around create / alter keyspace with
> NetworkTopologyStrategy:
> 1. Do not accept empty replication configuration (no DC options after class).
> Cassandra checks that SimpleStrategy must have replication_factor option but
> does not check that at least one DC should be present in the options for
> NetworkTopologyStrategy.
> 2. Cassandra accepts any random string as DC name replication option for
> NetworkTopologyStrategy while creating or altering keyspaces. Add a
> restriction that the options specified is valid datacenter name. Using
> incorrect value or simple mistake in typing the DC name can cause outage in
> production environment.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)