Ошибка соединения cqlsh: 'ref() не принимает аргументы ключевого слова'

Я пробовал все меры из этого сообщения и документ Cassandra.

Я попытался запустить все версии Cassandra, включая последнюю версию 3.7 из tarball и пакета Debian, но я продолжаю получать ошибки при выполнении cqlsh.

Ошибка:

Ошибка соединения: ('Невозможно подключиться к любым серверам', {'127.0.0.1': TypeError ('ref() не принимает аргументы ключевого слова',)})

У меня не было проблем с запуском Cassandra, прежде чем я обновил свой Linux Mint с 17.3 до 18.

Я считаю, что я установил все необходимые пакеты, такие как java 8 и python 2.7.12.

Я думаю, что проблема существует в файле cassandra.yaml, так как параметр по умолчанию не работает, но я не уверен, как правильно настроить его работу.

Любые предложения оценены.

Ответ 1

Вы работаете в CASSANDRA-11850, где cqlsh разбивается с Python 2.7.11+. Этот билет отмечен как "Решено", и патч был применен к Cassandra 3.9, который еще не выпущен.

Я считаю, что я установил все необходимые пакеты, такие как java 8 и python 2.7.12.

В промежуточный период (до выпуска 3.9) вы можете вернуться к Python 2.7.10, а cqlsh должен работать (не тривиально). В противном случае DataStax DevCenter должен работать с Cassandra 3.7.

Изменить 20161020

Cassandra 3.9 была выпущена несколько недель назад и теперь может быть загружена.

Ответ 3

Это работает для Ubuntu 16.04 в Amazon EC2:

sudo apt-get --no-install-recommends install python-cassandra python3-cassandra
CQLSH_NO_BUNDLED=TRUE cqlsh "$(ec2metadata --local-ipv4)"