2011-12-05 19 views
3

我使用Hector從java應用程序與cassandra數據庫進行交互。 (Hector 1.0-1)Cassandra Hector:如何驗證行更新的成功/失敗(錯誤處理)

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

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

MutationResult mr = mutator.execute(); 

但是,關於手術結果的信息並不多。我們如何驗證手術是否成功?返回值是一個ResultStatus實現和3種方法可以稱爲是:

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

我可以假設,如果沒有異常調用execute()方法,操作成功?

回答

2

它看起來像execute方法沒有聲明任何拋出的異常,因爲它會拋出HectorException的實例,這是一個RuntimeException。

所以是的,如果沒有例外拋出,插入成功。否則,你將得到一個拋出HectorException的實例(對Cassandra方面的問題可能是HTimedOutException/HUnavailableException,而對於Hector方面的問題可能是其他方法)。