Какая версия cqlsh совместима с Cassandra 2.1.9?

Я столкнулся с той же проблемой, которая упоминается в вопросе populate_io_cache_on_flush не является столбцом, определенным в этих метаданных.

В соответствии с решением, указанным KIC во втором комментарии к этому ответ , мне нужно

"Используйте ту же клиентскую библиотеку, что и сервер. То есть после того, как Ubuntu обновит сервер (что произошло сегодня), все ваши клиентские программы также должны обновить драйвер."

Я использую Кассандру 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>

Спасибо за вашу помощь, ребята.


person Abhidemon    schedule 04.09.2015    source источник
comment
Точно такая же проблема сейчас. Насколько я понимаю, проблема заключается в версии собственного протокола, а не обязательно в версии cqlsh.   -  person user1496984    schedule 04.09.2015


Ответы (2)


Вот ультра-уродливое, но быстрое решение:

Найдите файл cqlsh.py в вашей файловой системе и измените DEFAULT_PROTOCOL_VERSION на 3:

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

В моей системе (Mac OS X, установленной через homebrew) этот файл находился в:

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

Довольно странно то, что вы не можете переопределить эту переменную через командную строку.

Возможно, вам также придется изменить фактическую версию CQL следующим образом:

cqlsh 127.0.0.1 --cqlversion=3.2.0

Временное решение крайне раздражающей проблемы.

person user1496984    schedule 04.09.2015
comment
после потери нескольких часов в Интернете в поисках решения это сработало для меня. Спасибо - person iRamesh; 28.10.2016
comment
Единственное, что я нашел, что работает. Спасибо! Я бы очень хотел, чтобы это можно было указать из командной строки. - person Jerry; 02.03.2017

Это ошибка. Проблема была исправлена ​​выше по течению: https://issues.apache.org/jira/browse/CASSANDRA-13307, но еще не выпущен. Однако вы можете проверить репозиторий cassandra и создать его самостоятельно. Или просто установите зависимости с помощью pip и запустите скрипт cqlsh из кассы cassandra.

person Stig Brautaset    schedule 20.04.2017