[
https://issues.apache.org/jira/browse/CASSANDRA-18198?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
German Eichberger updated CASSANDRA-18198:
------------------------------------------
Resolution: (was: Fixed)
Status: Open (was: Resolved)
h1. Regression
dtest-offheap.bootstrap_test.TestBootstrap.test_simultaneous_bootstrap (from
Cassandra dtests)
Failing for the past 1 build (Since
[#1451|https://ci-cassandra.apache.org/job/Cassandra-trunk/1451/] )
[Took 5 min 9
sec.|https://ci-cassandra.apache.org/job/Cassandra-trunk/1451/testReport/dtest-offheap.bootstrap_test/TestBootstrap/test_simultaneous_bootstrap/history]
!https://ci-cassandra.apache.org/static/f3f9be2d/images/32x32/health-80plus.png!
Failed 3 times in the last 30 runs. Flakiness: 17%, Stability: 90%
h3. Error Message
cassandra.OperationTimedOut: errors=\{'127.0.0.2:9042': 'Client request
timeout. See Session.execute[_async](timeout)'}, last_host=127.0.0.2:9042
h3. Stacktrace
self = <bootstrap_test.TestBootstrap object at 0x7f42b8ff1340> @since('2.1.1')
def test_simultaneous_bootstrap(self): """ Attempt to bootstrap two nodes at
once, to assert the second bootstrapped node fails, and does not interfere.
Start a one node cluster and run a stress write workload. Start up a second
node, and wait for the first node to detect it has joined the cluster. While
the second node is bootstrapping, start a third node. This should fail.
@jira_ticket CASSANDRA-7069 @jira_ticket CASSANDRA-9484 """ bootstrap_error =
"Other bootstrapping/leaving/moving nodes detected," \ " cannot bootstrap while
cassandra.consistent.rangemovement is true" cluster = self.cluster
cluster.set_environment_variable('CASSANDRA_TOKEN_PREGENERATION_DISABLED',
'True') cluster.populate(1) cluster.start() node1, = cluster.nodelist()
node1.stress(['write', 'n=500K', 'no-warmup', '-schema',
'replication(factor=1)', '-rate', 'threads=10']) node2 = new_node(cluster)
node2.start() for _ in range(30): # wait until node2 shows up ntout =
node1.nodetool('status').stdout if re.search(r'UJ\s+' + node2.ip_addr, ntout):
break time.sleep(0.1) node3 = new_node(cluster, remote_debug_port='2003') try:
node3.start(wait_other_notice=False, verbose=False) except NodeError: pass #
node doesn't start as expected time.sleep(.5) node2.watch_log_for("Starting
listening for CQL clients") node3.watch_log_for(bootstrap_error) session =
self.patient_exclusive_cql_connection(node2) # Repeat the select count(*)
query, to help catch # bugs like 9484, where count(*) fails at higher # data
loads. for _ in range(5): > assert_one(session, "SELECT count(*) from
keyspace1.standard1", [500000], cl=ConsistencyLevel.ONE) bootstrap_test.py:885:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tools/assertions.py:130: in assert_one res = session.execute(simple_query)
../venv/src/cassandra-driver/cassandra/cluster.py:2618: in execute return
self.execute_async(query, parameters, trace, custom_payload, timeout,
execution_profile, paging_state, host, execute_as).result() _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self =
<ResponseFuture: query='<SimpleStatement query="SELECT count(*) from
keyspace1.standard1", consistency=ONE>' request_i...9042': 'Client request
timeout. See Session.execute[_async](timeout)'}, last_host=127.0.0.2:9042
coordinator_host=None> def result(self): """ Return the final result or raise
an Exception if errors were encountered. If the final result or error has not
been set yet, this method will block until it is set, or the timeout set for
the request expires. Timeout is specified in the Session request execution
functions. If the timeout is exceeded, an :exc:`cassandra.OperationTimedOut`
will be raised. This is a client-side timeout. For more information about
server-side coordinator timeouts, see :class:`.policies.RetryPolicy`. Example
usage:: >>> future = session.execute_async("SELECT * FROM mycf") >>> # do other
stuff... >>> try: ... rows = future.result() ... for row in rows: ... ... #
process results ... except Exception: ... log.exception("Operation failed:")
""" self._event.wait() if self._final_result is not _NOT_SET: return
ResultSet(self, self._final_result) else: > raise self._final_exception E
cassandra.OperationTimedOut: errors=\{'127.0.0.2:9042': 'Client request
timeout. See Session.execute[_async](timeout)'}, last_host=127.0.0.2:9042
../venv/src/cassandra-driver/cassandra/cluster.py:4894: OperationTimedOut
> "AttributeError: module 'py' has no attribute 'io'" reported in multiple tests
> ------------------------------------------------------------------------------
>
> Key: CASSANDRA-18198
> URL: https://issues.apache.org/jira/browse/CASSANDRA-18198
> Project: Cassandra
> Issue Type: Bug
> Components: Test/dtest/python
> Reporter: Claude Warren
> Assignee: Brandon Williams
> Priority: Normal
> Fix For: 3.0.29, 3.11.15, 4.0.8, 4.1.1, 4.2
>
>
> {{title = 'Timeout'}}
> {{stream = <_io.TextIOWrapper name='<stderr>' mode='w' encoding='utf-8'>}}
> {{{}sep = '+'{}}}{{{}def write_title(title, stream=None, sep="~"):{}}}
> {{{}"""Write a section title.{}}}{{{}If *stream* is None sys.stderr will be
> used, *sep* is used to{}}}
> {{draw the line.}}
> {{"""}}
> {{if stream is None:}}
> {{stream = sys.stderr}}
> {{> width = py.io.get_terminal_width()}}
> {{E AttributeError: module 'py' has no attribute 'io}}
>
> is reported in multiple tests as noted below.
> possibly a class loader issue associated with CASSANDRA-18150
> 4.1
> [https://ci-cassandra.apache.org/job/Cassandra-4.1/256/testReport/dtest-offheap.repair_tests.incremental_repair_test/TestIncRepair/test_multiple_full_repairs_lcs]
> 3.11
> [https://ci-cassandra.apache.org/job/Cassandra-3.11/424/testReport/dtest.bootstrap_test/TestBootstrap/test_simultaneous_bootstrap/]
> 3.0
> [https://ci-cassandra.apache.org/job/Cassandra-3.0/328/testReport/dtest-upgrade.upgrade_tests.upgrade_supercolumns_test/TestSCUpgrade/test_upgrade_super_columns_through_all_versions/]
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]