哪个版本的cqlsh与Cassandra 2.1.9兼容?

前端之家收集整理的这篇文章主要介绍了哪个版本的cqlsh与Cassandra 2.1.9兼容?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我面临的问题是 populate_io_cache_on_flush is not a column defined in this metadata问题中提到的问题.

根据0700在answer的第2条评论中指定的解决方案,我需要

“使用与服务器相同的客户端库.即在ubuntu更新服务器(今天发生的事情)之后,所有客户端程序也必须升级驱动程序.”

我正在使用Cassandra 2.1.9.和cqlsh 5.0.1.

[cqlsh 5.0.1 | Cassandra 2.1.9 | CQL spec 3.2.0 | Native protocol v3]

我应该使用哪个版本的cqlsh来解决我的问题?

—-

编辑(已解决):我通过使用客户端库版本2.1.3解决了这个问题.

我的maven依赖现在看起来像:

<dependency>
        <groupId>com.datastax.cassandra</groupId>
        <artifactId>cassandra-driver-core</artifactId>
        <version>2.1.3</version>
</dependency>

谢谢你的帮助.

解决方法

这是一个超级丑陋但快速修复:

文件系统中找到cqlsh.py文件,并将DEFAULT_PROTOCOL_VERSION更改为3:

...
DEFAULT_CQLVER = '3.3.0'
DEFAULT_PROTOCOL_VERSION = 3
DEFAULT_CONNECT_TIMEOUT_SECONDS = 5
...

在我的系统上(通过自制软件安装的Mac OS X),该文件位于:

/usr/local/Cellar/cassandra/2.2.0/libexec/bin/cqlsh.py

相当奇怪的是你不能通过命令行覆盖这个变量.

您可能还需要更改实际的CQL版本,如下所示:

cqlsh 127.0.0.1 --cqlversion=3.2.0

临时修复一个超烦人的问题..

猜你在找的NoSQL相关文章