you're overcomplicating things.
just connect to *a* node, and if it happens to be down, try a different one.
nodes being down should be a rare event, not a normal condition. no
need to optimize for it so much.
also see http://wiki.apache.org/cassandra/FAQ#node_clients_connect_to
2010/6/1 Patricio Echagüe <email@example.com>:
> Hi all, I'm using Hector framework to interact with Cassandra and at trying
> to handle failover more effectively I found it a bit complicated to fetch
> all cassandra nodes that are up and running.
> My goal is to keep an up-to-date list of active/up Cassandra servers to
> provide HEctor every time I need to execute against the db.
> I've seen this Thrift method: get_string_property("token map") but it
> returns the nodes in the ring no matter is the node is down.
> Any advice?
Project Chair, Apache Cassandra
co-founder of Riptano, the source for professional Cassandra support