我正在使用 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 中尝试过查询并且它可以工作,但不能使用此代码。有谁知道出了什么问题?
谢谢!