Bug: Test Failure: dtest-upgrade.upgrade_tests.cql_tests.TestCQLNodes2RF1_Upgrade_indev_3_0_x_To_indev_4_0_x.test_edge_2i_on_complex_pk
Status: Open
Priority: Normal
Created: 26/Jan/22 19:21

Failed 1 times in the last 30 runs. Flakiness: 3%, Stability: 96%

Error Message
cassandra.cluster.NoHostAvailable: ('Unable to connect to any servers', {'127.0.0.1:9042': DriverException('ProtocolError returned from server while using explicitly set client protocol_version 4')})

{code}
Stacktrace
self = <abc.TestCQLNodes2RF1_Upgrade_indev_3_0_x_To_indev_4_0_x object at 0x7f39199845b0>

    def test_edge_2i_on_complex_pk(self):
>       cursor = self.prepare()

upgrade_tests/cql_tests.py:2796: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
upgrade_tests/upgrade_base.py:138: in prepare
    session = self.patient_cql_connection(node1, protocol_version=protocol_version, **kwargs)
dtest_setup.py:238: in patient_cql_connection
    session = retry_till_success(
dtest_setup.py:39: in retry_till_success
    return fun(*args, **kwargs)
dtest_setup.py:176: in cql_connection
    return self._create_session(node, keyspace, user, password, compression,
dtest_setup.py:216: in _create_session
    session = cluster.connect(wait_for_all_pools=True)
../venv/src/cassandra-driver/cassandra/cluster.py:1690: in connect
    self.control_connection.connect()
../venv/src/cassandra-driver/cassandra/cluster.py:3488: in connect
    self._set_new_connection(self._reconnect_internal())
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <cassandra.cluster.ControlConnection object at 0x7f391a65dbb0>

    def _reconnect_internal(self):
        """
            Tries to connect to each host in the query plan until one succeeds
            or every attempt fails. If successful, a new Connection will be
            returned.  Otherwise, :exc:`NoHostAvailable` will be raised
            with an "errors" arg that is a dict mapping host addresses
            to the exception that was raised when an attempt was made to open
            a connection to that host.
            """
        errors = {}
        lbp = (
            self._cluster.load_balancing_policy
            if self._cluster._config_mode == _ConfigMode.LEGACY else
            self._cluster._default_load_balancing_policy
        )
    
        for host in lbp.make_query_plan():
            try:
                return self._try_connect(host)
            except ConnectionException as exc:
                errors[str(host.endpoint)] = exc
                log.warning("[control connection] Error connecting to %s:", host, exc_info=True)
                self._cluster.signal_connection_failure(host, exc, is_host_addition=False)
            except Exception as exc:
                errors[str(host.endpoint)] = exc
                log.warning("[control connection] Error connecting to %s:", host, exc_info=True)
            if self._is_shutdown:
                raise DriverException("[control connection] Reconnection in progress during shutdown")
    
>       raise NoHostAvailable("Unable to connect to any servers", errors)
E       cassandra.cluster.NoHostAvailable: ('Unable to connect to any servers', {'127.0.0.1:9042': DriverException('ProtocolError returned from server while using explicitly set client protocol_version 4')})

../venv/src/cassandra-driver/cassandra/cluster.py:3533: NoHostAvailable
{code}