Merge branch 'cassandra-2.2' into trunk
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/067141a2 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/067141a2 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/067141a2 Branch: refs/heads/trunk Commit: 067141a2302084fe0402f305ddda1c6ae57ad083 Parents: 9627f13 cda407a Author: Aleksey Yeschenko <[email protected]> Authored: Wed Jul 1 22:20:45 2015 +0300 Committer: Aleksey Yeschenko <[email protected]> Committed: Wed Jul 1 22:20:45 2015 +0300 ---------------------------------------------------------------------- CHANGES.txt | 5 +++-- src/java/org/apache/cassandra/config/Schema.java | 1 - src/java/org/apache/cassandra/db/Keyspace.java | 3 ++- 3 files changed, 5 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cassandra/blob/067141a2/CHANGES.txt ---------------------------------------------------------------------- diff --cc CHANGES.txt index ac23818,104f6ab..73e1ca8 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,17 -1,4 +1,17 @@@ +3.0 + * Change hinted_handoff_enabled yaml setting, JMX (CASSANDRA-9035) + * Add algorithmic token allocation (CASSANDRA-7032) + * Add nodetool command to replay batchlog (CASSANDRA-9547) + * Make file buffer cache independent of paths being read (CASSANDRA-8897) + * Remove deprecated legacy Hadoop code (CASSANDRA-9353) + * Decommissioned nodes will not rejoin the cluster (CASSANDRA-8801) + * Change gossip stabilization to use endpoit size (CASSANDRA-9401) + * Change default garbage collector to G1 (CASSANDRA-7486) + * Populate TokenMetadata early during startup (CASSANDRA-9317) + * undeprecate cache recentHitRate (CASSANDRA-6591) + + - 2.2 + 2.2.0-rc2 * (cqlsh) Allow setting the initial connection timeout (CASSANDRA-9601) * BulkLoader has --transport-factory option but does not use it (CASSANDRA-9675) * Allow JMX over SSL directly from nodetool (CASSANDRA-9090) http://git-wip-us.apache.org/repos/asf/cassandra/blob/067141a2/src/java/org/apache/cassandra/config/Schema.java ---------------------------------------------------------------------- diff --cc src/java/org/apache/cassandra/config/Schema.java index 2178f0e,548341e..4d3e6f3 --- a/src/java/org/apache/cassandra/config/Schema.java +++ b/src/java/org/apache/cassandra/config/Schema.java @@@ -447,11 -416,16 +447,10 @@@ public class Schem MigrationManager.instance.notifyCreateKeyspace(ksm); } - public void updateKeyspace(String ksName) + public void updateKeyspace(String ksName, KeyspaceParams newParams) { - KSMetaData oldKsm = getKSMetaData(ksName); - assert oldKsm != null; - KSMetaData newKsm = LegacySchemaTables.createKeyspaceFromName(ksName).cloneWith(oldKsm.cfMetaData().values(), oldKsm.userTypes); - - setKeyspaceDefinition(newKsm); - Keyspace.open(ksName).setMetadata(newKsm); - - MigrationManager.instance.notifyUpdateKeyspace(newKsm); + KeyspaceMetadata ksm = update(ksName, ks -> ks.withSwapped(newParams)); - Keyspace.open(ksName).createReplicationStrategy(ksm); + MigrationManager.instance.notifyUpdateKeyspace(ksm); } public void dropKeyspace(String ksName) http://git-wip-us.apache.org/repos/asf/cassandra/blob/067141a2/src/java/org/apache/cassandra/db/Keyspace.java ---------------------------------------------------------------------- diff --cc src/java/org/apache/cassandra/db/Keyspace.java index af79ed8,548d2be..cc95b9f --- a/src/java/org/apache/cassandra/db/Keyspace.java +++ b/src/java/org/apache/cassandra/db/Keyspace.java @@@ -167,16 -161,6 +167,17 @@@ public class Keyspac } } + public void setMetadata(KeyspaceMetadata metadata) + { + this.metadata = metadata; ++ createReplicationStrategy(metadata); + } + + public KeyspaceMetadata getMetadata() + { + return metadata; + } + public Collection<ColumnFamilyStore> getColumnFamilyStores() { return Collections.unmodifiableCollection(columnFamilyStores.values()); @@@ -303,13 -287,24 +304,13 @@@ return new Keyspace(metadata); } - public void createReplicationStrategy(KeyspaceMetadata ksm) - private void createReplicationStrategy(KSMetaData ksm) ++ private void createReplicationStrategy(KeyspaceMetadata ksm) { replicationStrategy = AbstractReplicationStrategy.createReplicationStrategy(ksm.name, - ksm.strategyClass, + ksm.params.replication.klass, StorageService.instance.getTokenMetadata(), DatabaseDescriptor.getEndpointSnitch(), - ksm.strategyOptions); - } - - public void setMetadata(KSMetaData ksm) - { - this.metadata = ksm; - createReplicationStrategy(ksm); - } - - public KSMetaData getMetadata() - { - return metadata; + ksm.params.replication.options); } // best invoked on the compaction mananger.
