Cassandra Hector:如何验证行更新的成功/失败(错误处理)

时间:2011-12-05 20:56:17

标签: cassandra hector

我正在使用Hector与java应用程序中的cassandra数据库进行交互。 (赫克托1.0-1)

在此示例中,它显示了如何插入(或更新)字段。

mutator.addInsertion("650222", "Npanxx", HFactory.createStringColumn("state", "CA"));                

MutationResult mr = mutator.execute();

但是,关于手术结果的信息并不多。我们如何验证操作是否成功?返回值是ResultStatus实现,可以调用的3个方法是:

mr.getHostUsed()
mr.getExecutionTimeNano()
mr.getExecutionTimeMicro()

我可以假设如果没有异常调用execute()方法,那么操作是否成功?

1 个答案:

答案 0 :(得分:2)

看起来execute方法没有声明抛出任何异常,因为它会抛出HectorException的实例,这是一个RuntimeException。

所以是的,如果没有抛出异常,插入成功。否则你将得到一个抛出HectorException的实例(对于Cassandra方面的问题可能是HTimedOutException / HUnavailableException,而对于Hector方面的某些东西可能是其他东西)。