我正在尝试将我的旧版本从 cassandra 1.2.8 迁移到 cassandra 2.1,我使用的是 phpcassa 0.8,
当我迁移 cassandra 时,一切正常,但我无法使用:

$columnFamily->get($key);

我可以完美地编写并做到这一点:
$columnFamily->execute_cql_query($query);

但是如果我尝试使用 get() 读取数据,我会收到以下错误:
Error performing get_slice on 154.65.97.898:9160: exception 'cassandra_UnavailableException' in /var/www-zend/order/library/phpcassa/thrift/Thrift.php:574

也许有人可以帮我解决这个错误。

谢谢!

最佳答案

我解决了这个问题:

我只是将consistencyLevel 更改为ONE 并且它的工作,例如:

不起作用:

$consistencyLevel = cassandra_ConsistencyLevel::QUORUM;
$columnFamily->get($key, $columnNames, '', '', false, $limit, null, $consistencyLevel);

工作:
$consistencyLevel = cassandra_ConsistencyLevel::ONE;
$columnFamily->get($key, $columnNames, '', '', false, $limit, null, $consistencyLevel);

我不知道为什么,但是casandra 不允许我使用consistencyLevel QUORUM 来生成get()。

也许有人可以解释我。

谢谢!

10-08 02:24