Unit Test Results.

Designed for use with JUnit and Ant.

All Failures

ClassNameStatusTypeTime(s)
8_cythonno_x86_64_39_64test_mv_lock_contention_during_replayFailurecassandra.cluster.NoHostAvailable: ('Unable to connect to any servers', {'127.0.0.1:9042': ConnectionRefusedError(111, "Tried connecting to [('127.0.0.1', 9042)]. Last error: Connection refused")})

self = <commitlog_test.TestCommitLog object at 0x7f2eb77b41f0>

@since('3.0.7')
def test_mv_lock_contention_during_replay(self):
"""
Ensure that we don't generate WriteTimeoutExceptions during commitlog
replay due to MV lock contention. Fixed in 3.0.7 and 3.7.
@jira_ticket CASSANDRA-11891
"""
cluster_ver = self.cluster.version()
if LooseVersion('3.1') <= cluster_ver < LooseVersion('3.7'):
pytest.skip("Fixed in 3.0.7 and 3.7")

node1 = self.node1
node1.set_batch_commitlog(enabled=True, use_batch_window = self.cluster.version() < '5.0')
node1.start()
> session = self.patient_cql_connection(node1)

commitlog_test.py:181:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
dtest_setup.py:284: in patient_cql_connection
session = retry_till_success(
dtest_setup.py:39: in retry_till_success
return fun(*args, **kwargs)
dtest_setup.py:222: in cql_connection
return self._create_session(node, keyspace, user, password, compression,
dtest_setup.py:262: in _create_session
session = cluster.connect(wait_for_all_pools=True)
../cassandra/build/venv/src/cassandra-driver/cassandra/cluster.py:1690: in connect
self.control_connection.connect()
../cassandra/build/venv/src/cassandra-driver/cassandra/cluster.py:3488: in connect
self._set_new_connection(self._reconnect_internal())
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <cassandra.cluster.ControlConnection object at 0x7f2e9f7f7a90>

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': ConnectionRefusedError(111, "Tried connecting to [('127.0.0.1', 9042)]. Last error: Connection refused")})

../cassandra/build/venv/src/cassandra-driver/cassandra/cluster.py:3533: NoHostAvailable
37.552
8_cythonno_x86_64_62_64test_compaction_throughputFailureAssertionError: assert (5.0 + 0.5) >= 5.612 + where 5.0 = float('5')

self = <compaction_test.TestCompaction object at 0x7ff14f573520>

def test_compaction_throughput(self):
"""
Test setting compaction throughput.
Set throughput, insert data and ensure compaction performance corresponds.
"""
cluster = self.cluster
cluster.populate(1).start()
[node1] = cluster.nodelist()

# disableautocompaction only disables compaction for existing tables,
# so initialize stress tables with stress first
stress_write(node1, keycount=1)
node1.nodetool('disableautocompaction')

stress_write(node1, keycount=200000 * cluster.data_dir_count)

threshold = "5"
node1.nodetool('setcompactionthroughput -- ' + threshold)

node1.flush()
if node1.get_cassandra_version() < '2.2':
log_file = 'system.log'
else:
log_file = 'debug.log'
mark = node1.mark_log(filename=log_file)
node1.compact()
matches = node1.watch_log_for('Compacted', from_mark=mark, filename=log_file)

stringline = matches[0]

throughput_pattern = '{}={avgthroughput:f}{units}/s'
m = parse.search(throughput_pattern, stringline)
avgthroughput = m.named['avgthroughput']
found_units = m.named['units']

unit_conversion_dct = {
"MB": 1,
"MiB": 1,
"KiB": 1. / 1024,
"GiB": 1024,
"B": 1. / (1024 * 1024),
}

units = ['MB'] if cluster.version() < LooseVersion('3.6') else ['B', 'KiB', 'MiB', 'GiB']
assert found_units in units

logger.debug(avgthroughput)
avgthroughput_mb = unit_conversion_dct[found_units] * float(avgthroughput)

# The throughput in the log is computed independantly from the throttling and on the output files while
# throttling is on the input files, so while that throughput shouldn't be higher than the one set in
# principle, a bit of wiggle room is expected
> assert float(threshold) + 0.5 >= avgthroughput_mb
E AssertionError: assert (5.0 + 0.5) >= 5.612
E + where 5.0 = float('5')

compaction_test.py:302: AssertionError
112.356
8_cythonno_x86_64_63_64test_mv_with_default_ttl_without_flushFailureccmlib.node.TimeoutError: 16 Dec 2024 22:10:31 [node1] after 120.12/120 seconds Missing: ['Starting listening for CQL clients'] not found in system.log: Head: INFO [main] 2024-12-16 22:08:36,639 YamlConfigura Tail: ...ceived a TCM_DISCOVER_RSP response from /127.0.0.3:7000: DiscoveredNodes{nodes=[/127.0.0.1:7000, /127.0.0.2:7000, /127.0.0.3:7000], kind=KNOWN_PEERS}

self = <materialized_views_test.TestMaterializedViews object at 0x7f748e373340>

@since('3.0')
def test_mv_with_default_ttl_without_flush(self):
> self._test_mv_with_default_ttl(False)

materialized_views_test.py:1337:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
materialized_views_test.py:1344: in _test_mv_with_default_ttl
session = self.prepare(rf=3, nodes=3, options={'hinted_handoff_enabled': False}, consistency_level=ConsistencyLevel.QUORUM)
materialized_views_test.py:60: in prepare
cluster.start(jvm_args=['-Dcassandra.reset_bootstrap_progress=false'])
../cassandra/build/venv/lib/python3.8/site-packages/ccmlib/cluster.py:550: in start
node.watch_log_for(start_message, timeout=timeout, process=p, verbose=verbose, from_mark=mark,
../cassandra/build/venv/lib/python3.8/site-packages/ccmlib/node.py:610: in watch_log_for
TimeoutError.raise_if_passed(start=start, timeout=timeout, node=self.name,
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

start = 1734386911.0931487, timeout = 120
msg = "Missing: ['Starting listening for CQL clients'] not found in system.log:\n Head: INFO [main] 2024-12-16 22:08:36,639...e from /127.0.0.3:7000: DiscoveredNodes{nodes=[/127.0.0.1:7000, /127.0.0.2:7000, /127.0.0.3:7000], kind=KNOWN_PEERS}\n"
node = 'node1'

@staticmethod
def raise_if_passed(start, timeout, msg, node=None):
if start + timeout < time.time():
> raise TimeoutError.create(start, timeout, msg, node)
E ccmlib.node.TimeoutError: 16 Dec 2024 22:10:31 [node1] after 120.12/120 seconds Missing: ['Starting listening for CQL clients'] not found in system.log:
E Head: INFO [main] 2024-12-16 22:08:36,639 YamlConfigura
E Tail: ...ceived a TCM_DISCOVER_RSP response from /127.0.0.3:7000: DiscoveredNodes{nodes=[/127.0.0.1:7000, /127.0.0.2:7000, /127.0.0.3:7000], kind=KNOWN_PEERS}

../cassandra/build/venv/lib/python3.8/site-packages/ccmlib/node.py:56: TimeoutError
156.240
8_cythonno_x86_64_39_64test_mv_lock_contention_during_replayFailurecassandra.cluster.NoHostAvailable: ('Unable to connect to any servers', {'127.0.0.1:9042': ConnectionRefusedError(111, "Tried connecting to [('127.0.0.1', 9042)]. Last error: Connection refused")})

self = <commitlog_test.TestCommitLog object at 0x7f5dcec57250>

@since('3.0.7')
def test_mv_lock_contention_during_replay(self):
"""
Ensure that we don't generate WriteTimeoutExceptions during commitlog
replay due to MV lock contention. Fixed in 3.0.7 and 3.7.
@jira_ticket CASSANDRA-11891
"""
cluster_ver = self.cluster.version()
if LooseVersion('3.1') <= cluster_ver < LooseVersion('3.7'):
pytest.skip("Fixed in 3.0.7 and 3.7")

node1 = self.node1
node1.set_batch_commitlog(enabled=True, use_batch_window = self.cluster.version() < '5.0')
node1.start()
> session = self.patient_cql_connection(node1)

commitlog_test.py:181:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
dtest_setup.py:284: in patient_cql_connection
session = retry_till_success(
dtest_setup.py:39: in retry_till_success
return fun(*args, **kwargs)
dtest_setup.py:222: in cql_connection
return self._create_session(node, keyspace, user, password, compression,
dtest_setup.py:262: in _create_session
session = cluster.connect(wait_for_all_pools=True)
../cassandra/build/venv/src/cassandra-driver/cassandra/cluster.py:1690: in connect
self.control_connection.connect()
../cassandra/build/venv/src/cassandra-driver/cassandra/cluster.py:3488: in connect
self._set_new_connection(self._reconnect_internal())
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <cassandra.cluster.ControlConnection object at 0x7f5dcde20dc0>

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': ConnectionRefusedError(111, "Tried connecting to [('127.0.0.1', 9042)]. Last error: Connection refused")})

../cassandra/build/venv/src/cassandra-driver/cassandra/cluster.py:3533: NoHostAvailable
39.261
8_cythonno_x86_64_62_64test_compaction_throughputFailureAssertionError: assert (5.0 + 0.5) >= 5.631 + where 5.0 = float('5')

self = <compaction_test.TestCompaction object at 0x7fc34fe613d0>

def test_compaction_throughput(self):
"""
Test setting compaction throughput.
Set throughput, insert data and ensure compaction performance corresponds.
"""
cluster = self.cluster
cluster.populate(1).start()
[node1] = cluster.nodelist()

# disableautocompaction only disables compaction for existing tables,
# so initialize stress tables with stress first
stress_write(node1, keycount=1)
node1.nodetool('disableautocompaction')

stress_write(node1, keycount=200000 * cluster.data_dir_count)

threshold = "5"
node1.nodetool('setcompactionthroughput -- ' + threshold)

node1.flush()
if node1.get_cassandra_version() < '2.2':
log_file = 'system.log'
else:
log_file = 'debug.log'
mark = node1.mark_log(filename=log_file)
node1.compact()
matches = node1.watch_log_for('Compacted', from_mark=mark, filename=log_file)

stringline = matches[0]

throughput_pattern = '{}={avgthroughput:f}{units}/s'
m = parse.search(throughput_pattern, stringline)
avgthroughput = m.named['avgthroughput']
found_units = m.named['units']

unit_conversion_dct = {
"MB": 1,
"MiB": 1,
"KiB": 1. / 1024,
"GiB": 1024,
"B": 1. / (1024 * 1024),
}

units = ['MB'] if cluster.version() < LooseVersion('3.6') else ['B', 'KiB', 'MiB', 'GiB']
assert found_units in units

logger.debug(avgthroughput)
avgthroughput_mb = unit_conversion_dct[found_units] * float(avgthroughput)

# The throughput in the log is computed independantly from the throttling and on the output files while
# throttling is on the input files, so while that throughput shouldn't be higher than the one set in
# principle, a bit of wiggle room is expected
> assert float(threshold) + 0.5 >= avgthroughput_mb
E AssertionError: assert (5.0 + 0.5) >= 5.631
E + where 5.0 = float('5')

compaction_test.py:302: AssertionError
84.428
8_cythonno_x86_64_63_64test_mv_with_default_ttl_without_flushFailureccmlib.node.TimeoutError: 16 Dec 2024 22:06:48 [node1] after 120.26/120 seconds Missing: ['Starting listening for CQL clients'] not found in system.log: Head: INFO [main] 2024-12-16 22:04:50,685 YamlConfigura Tail: ...arent_repair_history INFO [GlobalLogFollower] 2024-12-16 22:06:47,875 ColumnFamilyStore.java:495 - Initializing system_distributed.view_build_status

self = <materialized_views_test.TestMaterializedViews object at 0x7f30ad4063d0>

@since('3.0')
def test_mv_with_default_ttl_without_flush(self):
> self._test_mv_with_default_ttl(False)

materialized_views_test.py:1337:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
materialized_views_test.py:1344: in _test_mv_with_default_ttl
session = self.prepare(rf=3, nodes=3, options={'hinted_handoff_enabled': False}, consistency_level=ConsistencyLevel.QUORUM)
materialized_views_test.py:60: in prepare
cluster.start(jvm_args=['-Dcassandra.reset_bootstrap_progress=false'])
../cassandra/build/venv/lib/python3.8/site-packages/ccmlib/cluster.py:550: in start
node.watch_log_for(start_message, timeout=timeout, process=p, verbose=verbose, from_mark=mark,
../cassandra/build/venv/lib/python3.8/site-packages/ccmlib/node.py:610: in watch_log_for
TimeoutError.raise_if_passed(start=start, timeout=timeout, node=self.name,
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

start = 1734386688.715994, timeout = 120
msg = "Missing: ['Starting listening for CQL clients'] not found in system.log:\n Head: INFO [main] 2024-12-16 22:04:50,685...lLogFollower] 2024-12-16 22:06:47,875 ColumnFamilyStore.java:495 - Initializing system_distributed.view_build_status\n"
node = 'node1'

@staticmethod
def raise_if_passed(start, timeout, msg, node=None):
if start + timeout < time.time():
> raise TimeoutError.create(start, timeout, msg, node)
E ccmlib.node.TimeoutError: 16 Dec 2024 22:06:48 [node1] after 120.26/120 seconds Missing: ['Starting listening for CQL clients'] not found in system.log:
E Head: INFO [main] 2024-12-16 22:04:50,685 YamlConfigura
E Tail: ...arent_repair_history
E INFO [GlobalLogFollower] 2024-12-16 22:06:47,875 ColumnFamilyStore.java:495 - Initializing system_distributed.view_build_status

../cassandra/build/venv/lib/python3.8/site-packages/ccmlib/node.py:56: TimeoutError
153.364