How do you check for the existence of a column family in hector?
Asked Answered
K

1

9

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?

Kreiker answered 19/6, 2011 at 0:11 Comment(2)
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
M
9

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.

Macdonald answered 20/6, 2011 at 5:39 Comment(1)
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.