[
https://issues.apache.org/jira/browse/CASSANDRA-17289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Josh McKenzie updated CASSANDRA-17289:
--------------------------------------
Description:
Looks like env / byteman script issues.
hires
[https://app.circleci.com/pipelines/github/josh-mckenzie/cassandra/168/workflows/1d30a113-c14b-4cf4-a631-bedb9eb65762/jobs/1443]
{code:java}
ead_repair_test.TestReadRepairGuarantees
read_repair_test.py
AssertionError: byteman script didn't compile ERROR : Unable to open file :
./byteman/read_repair/stop_writes.btm java.io.FileNotFoundException:
./byteman/read_repair/stop_writes.btm (No such file or directory) assert not
True
self = <read_repair_test.TestReadRepairGuarantees object at 0x7fc1632fd7b8>
repair_type = 'none', expect_atomic = True
@pytest.mark.parametrize("repair_type,expect_atomic",
(('blocking', False), ('none', True)),
ids=('blocking', 'none'))
def test_atomic_writes(self, repair_type, expect_atomic):
"""
tests how read repair provides, or breaks, write atomicity
'none' read repair should maintain atomic writes, blocking and
async should not
"""
assert repair_type in ('blocking', 'async', 'none')
node1, node2, node3 = self.cluster.nodelist()
session = self.get_cql_connection(node1, timeout=2)
ddl = "CREATE TABLE ks.tbl (k int, c int, v1 int, v2 int, primary key
(k, c)) WITH read_repair = '" + repair_type + "';"
print (ddl)
session.execute(ddl)
session.execute(quorum("INSERT INTO ks.tbl (k, c, v1, v2) VALUES (1, 0,
1, 1)"))
> with stop_writes(node2, node3):
/home/cassandra/cassandra-dtest/read_repair_test.py:880:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.6/contextlib.py:81: in __enter__
return next(self.gen)
/home/cassandra/cassandra-dtest/read_repair_test.py:789: in stop_writes
with _byteman_cycle(nodes, {'normal': [normal], 'repair': [repair], 'all':
[normal, repair]}[kind]):
/usr/lib/python3.6/contextlib.py:81: in __enter__
return next(self.gen)
/home/cassandra/cassandra-dtest/read_repair_test.py:768: in _byteman_cycle
byteman_validate(nodes[0], script_path(script))
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
node = <ccmlib.node.Node object at 0x7fc1632fd908>
script = './byteman/read_repair/stop_writes.btm', verbose = False, opts = []
def byteman_validate(node, script, verbose=False, opts=None):
opts = opts or []
cdir = node.get_install_dir()
byteman_cmd = []
byteman_cmd.append(os.path.join(os.environ['JAVA_HOME'],
'bin',
'java'))
byteman_cmd.append('-cp')
jars = [
glob.glob(os.path.join(cdir, 'build', 'lib', 'jars',
'byteman-[0-9]*.jar'))[0],
os.path.join(cdir, 'build', '*'),
]
byteman_cmd.append(':'.join(jars))
byteman_cmd.append('org.jboss.byteman.check.TestScript')
byteman_cmd.append('-p')
byteman_cmd.append(node.byteman_port)
if verbose and '-v' not in opts:
byteman_cmd.append('-v')
byteman_cmd.append(script)
# process = subprocess.Popen(byteman_cmd)
# out, err = process.communicate()
out = subprocess.check_output(byteman_cmd)
if (out is not None) and isinstance(out, bytes):
out = out.decode()
has_errors = 'ERROR' in out
if verbose and not has_errors:
print (out)
> assert not has_errors, "byteman script didn't compile\n" + out
E AssertionError: byteman script didn't compile
E ERROR : Unable to open file : ./byteman/read_repair/stop_writes.btm
E java.io.FileNotFoundException: ./byteman/read_repair/stop_writes.btm
(No such file or directory)
E
E assert not True
/home/cassandra/cassandra-dtest/read_repair_test.py:54: AssertionError
{code}
was:
Looks like env / byteman script issues.
{code}
ead_repair_test.TestReadRepairGuarantees
read_repair_test.py
AssertionError: byteman script didn't compile ERROR : Unable to open file :
./byteman/read_repair/stop_writes.btm java.io.FileNotFoundException:
./byteman/read_repair/stop_writes.btm (No such file or directory) assert not
True
self = <read_repair_test.TestReadRepairGuarantees object at 0x7fc1632fd7b8>
repair_type = 'none', expect_atomic = True
@pytest.mark.parametrize("repair_type,expect_atomic",
(('blocking', False), ('none', True)),
ids=('blocking', 'none'))
def test_atomic_writes(self, repair_type, expect_atomic):
"""
tests how read repair provides, or breaks, write atomicity
'none' read repair should maintain atomic writes, blocking and
async should not
"""
assert repair_type in ('blocking', 'async', 'none')
node1, node2, node3 = self.cluster.nodelist()
session = self.get_cql_connection(node1, timeout=2)
ddl = "CREATE TABLE ks.tbl (k int, c int, v1 int, v2 int, primary key
(k, c)) WITH read_repair = '" + repair_type + "';"
print (ddl)
session.execute(ddl)
session.execute(quorum("INSERT INTO ks.tbl (k, c, v1, v2) VALUES (1, 0,
1, 1)"))
> with stop_writes(node2, node3):
/home/cassandra/cassandra-dtest/read_repair_test.py:880:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib/python3.6/contextlib.py:81: in __enter__
return next(self.gen)
/home/cassandra/cassandra-dtest/read_repair_test.py:789: in stop_writes
with _byteman_cycle(nodes, {'normal': [normal], 'repair': [repair], 'all':
[normal, repair]}[kind]):
/usr/lib/python3.6/contextlib.py:81: in __enter__
return next(self.gen)
/home/cassandra/cassandra-dtest/read_repair_test.py:768: in _byteman_cycle
byteman_validate(nodes[0], script_path(script))
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
node = <ccmlib.node.Node object at 0x7fc1632fd908>
script = './byteman/read_repair/stop_writes.btm', verbose = False, opts = []
def byteman_validate(node, script, verbose=False, opts=None):
opts = opts or []
cdir = node.get_install_dir()
byteman_cmd = []
byteman_cmd.append(os.path.join(os.environ['JAVA_HOME'],
'bin',
'java'))
byteman_cmd.append('-cp')
jars = [
glob.glob(os.path.join(cdir, 'build', 'lib', 'jars',
'byteman-[0-9]*.jar'))[0],
os.path.join(cdir, 'build', '*'),
]
byteman_cmd.append(':'.join(jars))
byteman_cmd.append('org.jboss.byteman.check.TestScript')
byteman_cmd.append('-p')
byteman_cmd.append(node.byteman_port)
if verbose and '-v' not in opts:
byteman_cmd.append('-v')
byteman_cmd.append(script)
# process = subprocess.Popen(byteman_cmd)
# out, err = process.communicate()
out = subprocess.check_output(byteman_cmd)
if (out is not None) and isinstance(out, bytes):
out = out.decode()
has_errors = 'ERROR' in out
if verbose and not has_errors:
print (out)
> assert not has_errors, "byteman script didn't compile\n" + out
E AssertionError: byteman script didn't compile
E ERROR : Unable to open file : ./byteman/read_repair/stop_writes.btm
E java.io.FileNotFoundException: ./byteman/read_repair/stop_writes.btm
(No such file or directory)
E
E assert not True
/home/cassandra/cassandra-dtest/read_repair_test.py:54: AssertionError
{code}
> Test Failure: python dtest, circleci, test_atomic_writes[none]
> --------------------------------------------------------------
>
> Key: CASSANDRA-17289
> URL: https://issues.apache.org/jira/browse/CASSANDRA-17289
> Project: Cassandra
> Issue Type: Bug
> Components: Test/dtest/python
> Reporter: Josh McKenzie
> Priority: Normal
>
> Looks like env / byteman script issues.
> hires
> [https://app.circleci.com/pipelines/github/josh-mckenzie/cassandra/168/workflows/1d30a113-c14b-4cf4-a631-bedb9eb65762/jobs/1443]
>
> {code:java}
> ead_repair_test.TestReadRepairGuarantees
> read_repair_test.py
> AssertionError: byteman script didn't compile ERROR : Unable to open file :
> ./byteman/read_repair/stop_writes.btm java.io.FileNotFoundException:
> ./byteman/read_repair/stop_writes.btm (No such file or directory) assert
> not True
> self = <read_repair_test.TestReadRepairGuarantees object at 0x7fc1632fd7b8>
> repair_type = 'none', expect_atomic = True
> @pytest.mark.parametrize("repair_type,expect_atomic",
> (('blocking', False), ('none', True)),
> ids=('blocking', 'none'))
> def test_atomic_writes(self, repair_type, expect_atomic):
> """
> tests how read repair provides, or breaks, write atomicity
> 'none' read repair should maintain atomic writes, blocking and
> async should not
> """
> assert repair_type in ('blocking', 'async', 'none')
> node1, node2, node3 = self.cluster.nodelist()
>
> session = self.get_cql_connection(node1, timeout=2)
> ddl = "CREATE TABLE ks.tbl (k int, c int, v1 int, v2 int, primary key
> (k, c)) WITH read_repair = '" + repair_type + "';"
> print (ddl)
> session.execute(ddl)
>
> session.execute(quorum("INSERT INTO ks.tbl (k, c, v1, v2) VALUES (1,
> 0, 1, 1)"))
>
> > with stop_writes(node2, node3):
> /home/cassandra/cassandra-dtest/read_repair_test.py:880:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
> /usr/lib/python3.6/contextlib.py:81: in __enter__
> return next(self.gen)
> /home/cassandra/cassandra-dtest/read_repair_test.py:789: in stop_writes
> with _byteman_cycle(nodes, {'normal': [normal], 'repair': [repair],
> 'all': [normal, repair]}[kind]):
> /usr/lib/python3.6/contextlib.py:81: in __enter__
> return next(self.gen)
> /home/cassandra/cassandra-dtest/read_repair_test.py:768: in _byteman_cycle
> byteman_validate(nodes[0], script_path(script))
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> _
> node = <ccmlib.node.Node object at 0x7fc1632fd908>
> script = './byteman/read_repair/stop_writes.btm', verbose = False, opts = []
> def byteman_validate(node, script, verbose=False, opts=None):
> opts = opts or []
> cdir = node.get_install_dir()
> byteman_cmd = []
> byteman_cmd.append(os.path.join(os.environ['JAVA_HOME'],
> 'bin',
> 'java'))
> byteman_cmd.append('-cp')
> jars = [
> glob.glob(os.path.join(cdir, 'build', 'lib', 'jars',
> 'byteman-[0-9]*.jar'))[0],
> os.path.join(cdir, 'build', '*'),
> ]
> byteman_cmd.append(':'.join(jars))
> byteman_cmd.append('org.jboss.byteman.check.TestScript')
> byteman_cmd.append('-p')
> byteman_cmd.append(node.byteman_port)
> if verbose and '-v' not in opts:
> byteman_cmd.append('-v')
> byteman_cmd.append(script)
> # process = subprocess.Popen(byteman_cmd)
> # out, err = process.communicate()
> out = subprocess.check_output(byteman_cmd)
> if (out is not None) and isinstance(out, bytes):
> out = out.decode()
>
> has_errors = 'ERROR' in out
> if verbose and not has_errors:
> print (out)
>
> > assert not has_errors, "byteman script didn't compile\n" + out
> E AssertionError: byteman script didn't compile
> E ERROR : Unable to open file : ./byteman/read_repair/stop_writes.btm
> E java.io.FileNotFoundException:
> ./byteman/read_repair/stop_writes.btm (No such file or directory)
> E
> E assert not True
> /home/cassandra/cassandra-dtest/read_repair_test.py:54: AssertionError
> {code}
>
--
This message was sent by Atlassian Jira
(v8.20.1#820001)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]