Hi Aaron, Thanks for your mail. I am leaning towards making a new cluster since I am using cassandra version 0.7.3 and the fix you have put in is in cassandra 0.7.5, and I am less adventurous primarily because it is live system and service disruption is not what is desirable.
I have two more questions for you: a)Is there a way to specify snitch in cassandra per CF rather than one snitch for all column family. b)I have a weird issue with 0.7.3 when using property file snitch and a new node is added to an existing running cassandra cluster(which uses property file snitch) I have to add new node's IP to the cassandra-topology.properties of all the existing cassandra nodes otherwise the new node gives error ERROR [main] 2011-05-13 23:41:30,821 AbstractCassandraDaemon.java (line 333) Exception encountered during startup. java.lang.NullPointerException at org.apache.cassandra.locator.PropertyFileSnitch.getDatacenter(PropertyFileSnitch.java:96) at org.apache.cassandra.locator.NetworkTopologyStrategy.calculateNaturalEndpoints(NetworkTopologyStrategy.java:87) at org.apache.cassandra.locator.AbstractReplicationStrategy.getAddressRanges(AbstractReplicationStrategy.java:196) at org.apache.cassandra.locator.AbstractReplicationStrategy.getPendingAddressRanges(AbstractReplicationStrategy.java:230) at org.apache.cassandra.dht.BootStrapper.getRangesWithSources(BootStrapper.java:195) at org.apache.cassandra.dht.BootStrapper.bootstrap(BootStrapper.java:83) at org.apache.cassandra.service.StorageService.bootstrap(StorageService.java:525) at org.apache.cassandra.service.StorageService.joinTokenRing(StorageService.java:453) at org.apache.cassandra.service.StorageService.initServer(StorageService.java:403) at org.apache.cassandra.service.AbstractCassandraDaemon.setup(AbstractCassandraDaemon.java:194) at org.apache.cassandra.service.AbstractCassandraDaemon.activate(AbstractCassandraDaemon.java:316) at org.apache.cassandra.thrift.CassandraDaemon.main(CassandraDaemon.java:79) java.lang.NullPointerException at org.apache.cassandra.locator.PropertyFileSnitch.getDatacenter(PropertyFileSnitch.java:96) at org.apache.cassandra.locator.NetworkTopologyStrategy.calculateNaturalEndpoints(NetworkTopologyStrategy.java:87) at org.apache.cassandra.locator.AbstractReplicationStrategy.getAddressRanges(AbstractReplicationStrategy.java:196) at org.apache.cassandra.locator.AbstractReplicationStrategy.getPendingAddressRanges(AbstractReplicationStrategy.java:230) at org.apache.cassandra.dht.BootStrapper.getRangesWithSources(BootStrapper.java:195) at org.apache.cassandra.dht.BootStrapper.bootstrap(BootStrapper.java:83) at org.apache.cassandra.service.StorageService.bootstrap(StorageService.java:525) at org.apache.cassandra.service.StorageService.joinTokenRing(StorageService.java:453) at org.apache.cassandra.service.StorageService.initServer(StorageService.java:403) at org.apache.cassandra.service.AbstractCassandraDaemon.setup(AbstractCassandraDaemon.java:194) at org.apache.cassandra.service.AbstractCassandraDaemon.activate(AbstractCassandraDaemon.java:316) at org.apache.cassandra.thrift.CassandraDaemon.main(CassandraDaemon.java:79) Thanks for all your help. Anurag On Sun, May 15, 2011 at 3:56 PM, aaron morton <aa...@thelastpickle.com>wrote: > Rename a cluster > http://wiki.apache.org/cassandra/FAQ#clustername_mismatch > see also https://issues.apache.org/jira/browse/CASSANDRA-2632 > > The best approach will depend on > - how much data you have > - if this is a running system > - are the schemas identical > - are the individual clusters using the NetworkTopologyStrategy ? > - how much excitement you like. > > <http://wiki.apache.org/cassandra/FAQ#clustername_mismatch>Initial > thoughts, doubt this is correct... > > - change the tokens in each dc > - for a dc that will have the others join it, change > cassandra-topology.properties to put the new nodes in the new dc > - for a dc joining another, follow the procedure to change the name on each > node, update the seed list and update the topology to include the dc it is > joining, remove the schema and migrations SStables, as you do a rolling > restart > - update the seed list on the dc the others joined > - confirm there is one schema def > - update the replication factor of the schema to put replicas in each DC > http://wiki.apache.org/cassandra/Operations#Replication > - nodetool repair to change the RF and then cleanup > > There will be a lot of data moves and I doubt I got it right, is there any > chance of spinning up a whole new cluster and reloading the data ? > > I can give it some more thought later if you need. > > Hope that helps. > > ----------------- > Aaron Morton > Freelance Cassandra Developer > @aaronmorton > http://www.thelastpickle.com > > On 14 May 2011, at 04:55, Anurag Gujral wrote: > > Hi All, > I have 3 separate cassandra clusters running in multiple data > centers which I want to convert to one cassandra cluster across multiple > data centers > Does anyone tried this? If so what are the steps: > > I think I need to do the following: > a)Change cluster name: What is the procedure to do this? > b)Change tokens so that each node have a unique token > c)Change seed nodes so that machines in one data center know about machines > in another data center. > > Thanks > Anurag > > > > >