I have code that uses Hector to access Cassandra and needs to create column families on the fly if and only if they don't already exist. What is the proper way to check for the existence of a column family in a keyspace?
How do you check for the existence of a column family in hector?
What happens if you try to create a CF that already exists? In the Cassandra CLI this throws an error. If the same happens in Hector then you could attempt to create the CF and catch the exception if the CF already exists. –
Lots
This is pretty easy to deduce - it comes back as an HInvalidRequestException (our wrapping of the thrift exception) with a detailed error message. –
Imhoff
I posted some info in our Hector wiki.
https://github.com/rantav/hector/wiki/Getting-started-%285-minutes%29
Basically once you get the KeyspaceDef you can call:
keyspaceDef.getCfDefs() and see if the CF is there.
How exactly do yo use getCfDefs()? Assuming keyspaceDef is a KeyspaceDefinition.
List<ColumFamilyDefinition> lcf = keyspaceDef.getCfDefs();
should be correct, right? –
Kermes © 2022 - 2024 — McMap. All rights reserved.