I want to start using vnodes in my cluster. To do so, I've set up a new data center with the same number of nodes as the existing one, as described in http://docs.datastax.com/en/cassandra/2.0/cassandra/configuration/configVnodesProduction_t.html. The new DC is in the same physical location as the old one.
The problem I'm running into is that as soon as the nodes in the new data center are started, the application that is using the nodes in the old data center is frequently getting error messages because queries don't return the expected data. I'm pretty sure this is because somehow these queries are routed to the new, empty data center. The application is not connecting to the nodes in the new DC. I've tried two different things to prevent this: 1) Ensure that all queries use either LOCAL_ONE or LOCAL_QUORUM consistency. Nevertheless, I'm still seeing failed queries. 2) Start the new nodes with -Dcassandra.join_ring=false, to prevent them from participating in the cluster. Although they don't show up in nodetool ring, I'm still seeing failed queries. If I understand it correctly, both measures should prevent queries from ending up in the new DC, but somehow they don't in my situation. How is it possible that queries are routed to the new, emtpy data center? And more importantly, how can I prevent it? Thanks, Tom