4 votes

Erreur de protocole lors de l'exécution de cpp-driver datastax

Je travaille actuellement sur le pilote cpp de Datastax en C et je travaillais sur quelques exemples lorsque je suis tombé sur un problème très trivial. En essayant d'exécuter la commande Authentification de base script ici, j'ai trouvé cette erreur qui s'affiche et l'exécution du code se bloque.

L'erreur :

1587040775.210 [ERROR] (cluster_connector.cpp:192:void datastax::internal::core::ClusterConnector::on_connect(datastax::internal::core::ControlConnector*)): Unable to establish a control connection to host 127.0.0.3 because of the following error: Underlying connection error: Connect error 'connection refused'
1587040775.210 [ERROR] (cluster_connector.cpp:192:void datastax::internal::core::ClusterConnector::on_connect(datastax::internal::core::ControlConnector*)): Unable to establish a control connection to host 127.0.0.2 because of the following error: Underlying connection error: Connect error 'connection refused'
1587040775.211 [ERROR] (cluster_connector.cpp:192:void datastax::internal::core::ClusterConnector::on_connect(datastax::internal::core::ControlConnector*)): Unable to establish a control connection to host 127.0.0.1 because of the following error: Underlying connection error: Received error response 'Invalid or unsupported protocol version (66); supported versions are (3/v3, 4/v4, 5/v5-beta)' (0x0200000A)
1587040775.211 [WARN] (cluster_connector.cpp:289:void datastax::internal::core::ClusterConnector::on_connect(datastax::internal::core::ControlConnector*)): Host 127.0.0.1 does not support protocol version DSEv2. Trying protocol version DSEv1...
1587040775.212 [ERROR] (cluster_connector.cpp:192:void datastax::internal::core::ClusterConnector::on_connect(datastax::internal::core::ControlConnector*)): Unable to establish a control connection to host 127.0.0.1 because of the following error: Underlying connection error: Received error response 'Invalid or unsupported protocol version (65); supported versions are (3/v3, 4/v4, 5/v5-beta)' (0x0200000A)
1587040775.212 [WARN] (cluster_connector.cpp:289:void datastax::internal::core::ClusterConnector::on_connect(datastax::internal::core::ControlConnector*)): Host 127.0.0.1 does not support protocol version DSEv1. Trying protocol version v4...

Quels peuvent être ces protocoles qui ne sont pas pris en charge par ma machine ? De plus, après le dernier avertissement, qui est le suivant trying protocol v4 il se coince. J'utilise Casssandra 3.10+, Cpp-driver 2.13.

Toute personne ayant une solution de contournement ou une solution serait d'une grande aide. Merci d'avance

3voto

David Ritter Points 43

J'ai cherché un peu partout pour trouver de la documentation à l'appui, mais je n'en ai pas trouvé, donc cette partie est une conjecture. Il semble que la version 3 du serveur utilise le protocole V3. Il semble que la version 4 du serveur (toujours en version bêta) utilisera le protocole V4. Je soupçonne que la V5 est une itération future qui est en cours de planification et qui n'est pas encore gravée dans la pierre (c'est pourquoi elle est étiquetée comme bêta dans l'avertissement).

Cette partie n'est pas une conjecture. Si vous ajoutez ceci à votre code avant de vous connecter au cluster :

cass_cluster_set_protocol_version(cluster, CASS_PROTOCOL_VERSION_V3);

Tous les avertissements concernant le passage à un autre protocole devraient disparaître.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X