我正在使用Hector客户端的下一个代码来获取Cassandra正在使用的分区程序:
CqlQuery<String, String, String> cqlQuery = new CqlQuery<String, String, String>(
ksp, StringSerializer.get(), StringSerializer.get(), StringSerializer.get());
cqlQuery.setQuery("select partitioner from local");
QueryResult<CqlRows<String, String, String>> result = cqlQuery.execute();
CqlRows rows = result.get();
for (int i = 0; i < rows.getCount(); i++) {
RowImpl<String, String, String> row = (RowImpl<String, String, String>) rows.getList().get(i);
HColumn<String, String> column = row.getColumnSlice().getColumnByName("partitioner");
String partitioner = column.getName();
}
但它失败了,返回一个NullPointerException。我已经在cqlsh中尝试了查询并且它可以工作,但不使用此代码。有谁知道什么是错的?
谢谢!