Erreur de connexion cqlsh: ‘ref () ne prend pas les arguments de mot clé’

J’ai essayé toutes les mesures de cet article et de Cassandra doc .

J’ai essayé d’exécuter toutes les versions de Cassandra, y compris la dernière version 3.7 de tarball et les paquets Debian, mais je continue à avoir des erreurs lorsque cqlsh .

Erreur:

Erreur de connexion: (‘Impossible de se connecter à un serveur’, {‘127.0.0.1’: TypeError (‘ref () ne prend pas les arguments de mot clé’,})

Je n’ai eu aucun problème à exécuter Cassandra avant de mettre à jour ma version de Linux Mint de 17.3 à 18.

Je crois que j’ai installé tous les paquets nécessaires tels que java 8 et python 2.7.12.

Je pense que le problème existe dans le fichier cassandra.yaml car le paramètre par défaut ne fonctionne pas, mais je ne sais pas comment configurer correctement pour le faire fonctionner.

Toutes les suggestions sont appréciées.

Vous courez dans CASSANDRA-11850 , où cqlsh rompt avec Python 2.7.11+. Ce ticket a été marqué comme “Résolu” et un patch a été appliqué à Cassandra 3.9 qui n’a pas encore été publié.

Je crois que j’ai installé tous les paquets nécessaires tels que java 8 et python 2.7.12.

Dans l’intervalle (jusqu’à la sortie de la version 3.9), vous pouvez revenir à Python 2.7.10 et cqlsh devrait fonctionner (pas sortingvial). Sinon, DataStax DevCenter devrait fonctionner avec Cassandra 3.7.

Modifier 20161020

Cassandra 3.9 est sorti il ​​y a quelques semaines et peut maintenant être téléchargé .

Voir https://issues.apache.org/jira/browse/CASSANDRA-11850

Après avoir paramétré la variable d’environnement

 CQLSH_NO_BUNDLED=TRUE 

ça a résolu.

J’utilise Windows 7, Python 2.7.12, Cassandra 3.7

Cela fonctionne pour Ubuntu 16.04 dans Amazon EC2:

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

Même si, après le retour à python 2.7.10, le problème persiste. Cela signifie que python 2.7.10 n’est pas défini comme la version par défaut de python.

Allez dans le répertoire / usr / bin et vérifiez les différentes versions de python disponibles, dites python2.7 correspond à la version 2.7.10 (vous pouvez le vérifier en exécutant la commande python2.7 dans votre terminal et la version de python sera mentionnée dans la première ligne). de l’interpréteur, essayez la même chose avec toutes les autres versions de python disponibles dans le dossier pour trouver celle qui correspond à la version 2.7.10).

Maintenant, utilisez les commandes suivantes pour choisir la version python correcte (python2.7 dans mon cas) comme choix par défaut

update-alternatives –install / usr / bin / python python /usr/bin/python2.7

Besoin d’append la commande suivante

 sudo apt install python-pip pip install cassandra-driver export CQLSH_NO_BUNDLED=true