[jira] [Commented] (CASSANDRA-14420) dtests not determining C* version correctly
[ https://issues.apache.org/jira/browse/CASSANDRA-14420?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16469011#comment-16469011 ] Blake Eggleston commented on CASSANDRA-14420: - +1, thanks > dtests not determining C* version correctly > --- > > Key: CASSANDRA-14420 > URL: https://issues.apache.org/jira/browse/CASSANDRA-14420 > Project: Cassandra > Issue Type: Bug >Reporter: Sam Tunnicliffe >Assignee: Sam Tunnicliffe >Priority: Major > > In the course of CASSANDRA-14134, the means of extracting the C* version > under test before starting a cluster became broken. This is necessary in > cases where we want to gate values in cassandra.yaml based on version, so a > couple of tests are affected. The specifics are that the global > {{CASSANDRA_VERSION_FROM_BUILD}} was hardcoded to '4.0' and the ways in which > the various tests use it have meant that it was undetected until now. > Also, the {{fixture_since}} which we use to implement the {{@since}} > annotation is broken when a {{--cassandra-version}} is supplied, rather than > {{--cassandra-dir}}, meaning testing against released versions from git isn't > working right now. > Tests directly affected: > * {{auth_test.py}} - CASSANDRA-13985 added some gating of yaml props and > additional checks on CQL results based on the build version. These failed on > 3.11, which is how this issue was uncovered, but they're also broken on 2.2 > on builds.apache.org > * {{user_functions_test.py}} - gates setting a yaml property when version < > 3.0. Failing on 2.2. > * {{upgrade_tests}} - a number of these use the variable, but I don't think > they're actually being run at the moment. > * {{repair_tests/repair_test.py}}, {{replace_address_test.py}} & > {{thrift_test}} all use the global, but only to verify that the version is > not 3.9. As we're not running CI for that version, no-one noticed. -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-14420) dtests not determining C* version correctly
[ https://issues.apache.org/jira/browse/CASSANDRA-14420?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16462052#comment-16462052 ] Sam Tunnicliffe commented on CASSANDRA-14420: - Thanks [~bdeggleston], I've pushed an additional commit addressing your comments and re-run CI: * [2.2|https://circleci.com/gh/beobal/cassandra/199] * [3.0|https://circleci.com/gh/beobal/cassandra/197] * [3.11|https://circleci.com/gh/beobal/cassandra/198] * [trunk|https://circleci.com/gh/beobal/cassandra/200] > dtests not determining C* version correctly > --- > > Key: CASSANDRA-14420 > URL: https://issues.apache.org/jira/browse/CASSANDRA-14420 > Project: Cassandra > Issue Type: Bug >Reporter: Sam Tunnicliffe >Assignee: Sam Tunnicliffe >Priority: Major > > In the course of CASSANDRA-14134, the means of extracting the C* version > under test before starting a cluster became broken. This is necessary in > cases where we want to gate values in cassandra.yaml based on version, so a > couple of tests are affected. The specifics are that the global > {{CASSANDRA_VERSION_FROM_BUILD}} was hardcoded to '4.0' and the ways in which > the various tests use it have meant that it was undetected until now. > Also, the {{fixture_since}} which we use to implement the {{@since}} > annotation is broken when a {{--cassandra-version}} is supplied, rather than > {{--cassandra-dir}}, meaning testing against released versions from git isn't > working right now. > Tests directly affected: > * {{auth_test.py}} - CASSANDRA-13985 added some gating of yaml props and > additional checks on CQL results based on the build version. These failed on > 3.11, which is how this issue was uncovered, but they're also broken on 2.2 > on builds.apache.org > * {{user_functions_test.py}} - gates setting a yaml property when version < > 3.0. Failing on 2.2. > * {{upgrade_tests}} - a number of these use the variable, but I don't think > they're actually being run at the moment. > * {{repair_tests/repair_test.py}}, {{replace_address_test.py}} & > {{thrift_test}} all use the global, but only to verify that the version is > not 3.9. As we're not running CI for that version, no-one noticed. -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-14420) dtests not determining C* version correctly
[ https://issues.apache.org/jira/browse/CASSANDRA-14420?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16459856#comment-16459856 ] Blake Eggleston commented on CASSANDRA-14420: - I have a few notes: * could we rename parse_dtest_config to dtest_config. While I realize the fixture function itself is doing the parsing, it seems a little strange to be passing the dtest config into the misc setup methods with that name * you could probably set the parse_dtest_config fixture scope to something like module or session, so it's not reinstantiated for every test * auth_test:TestAuthRoles.role has a mutable default argument which can lead to difficult to diagnose bugs. It's default should be None, then evaluated in the function body as {{options = options or {}}} * I don't feel too strongly about this, but it looks like the parse_dtest_config argument is only used in a handful of fixture_dtest_setup_override implementations. Maybe it would be better to have a separate fixture setup for places where we need to consult the config? Otoh, passing the config into one of the main setup method seems like a reasonable thing to do. WDYT? * There's a {{parse_dtest_config}} definition in user_functions_test:TestUserFunctions that's just behaving as a pass through. Is this left over from some debugging something, or is there a reason it's there? If it's doing something, could you add a comment explaining what? > dtests not determining C* version correctly > --- > > Key: CASSANDRA-14420 > URL: https://issues.apache.org/jira/browse/CASSANDRA-14420 > Project: Cassandra > Issue Type: Bug >Reporter: Sam Tunnicliffe >Assignee: Sam Tunnicliffe >Priority: Major > > In the course of CASSANDRA-14134, the means of extracting the C* version > under test before starting a cluster became broken. This is necessary in > cases where we want to gate values in cassandra.yaml based on version, so a > couple of tests are affected. The specifics are that the global > {{CASSANDRA_VERSION_FROM_BUILD}} was hardcoded to '4.0' and the ways in which > the various tests use it have meant that it was undetected until now. > Also, the {{fixture_since}} which we use to implement the {{@since}} > annotation is broken when a {{--cassandra-version}} is supplied, rather than > {{--cassandra-dir}}, meaning testing against released versions from git isn't > working right now. > Tests directly affected: > * {{auth_test.py}} - CASSANDRA-13985 added some gating of yaml props and > additional checks on CQL results based on the build version. These failed on > 3.11, which is how this issue was uncovered, but they're also broken on 2.2 > on builds.apache.org > * {{user_functions_test.py}} - gates setting a yaml property when version < > 3.0. Failing on 2.2. > * {{upgrade_tests}} - a number of these use the variable, but I don't think > they're actually being run at the moment. > * {{repair_tests/repair_test.py}}, {{replace_address_test.py}} & > {{thrift_test}} all use the global, but only to verify that the version is > not 3.9. As we're not running CI for that version, no-one noticed. -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-14420) dtests not determining C* version correctly
[ https://issues.apache.org/jira/browse/CASSANDRA-14420?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16456790#comment-16456790 ] Sam Tunnicliffe commented on CASSANDRA-14420: - I've pushed a branch [here|https://github.com/beobal/cassandra-dtest/commits/14420] which removes {{dtest.py::CASSANDRA_VERSION_FROM_BUILD}} and refactors {{auth_test::TestAuthRoles}}. dtests look good (i.e. back to how they were) against [2.2|https://circleci.com/workflow-run/ace01378-6551-424d-b1d4-b3358271b599], [3.11|https://circleci.com/workflow-run/894a2090-a78f-4763-aab9-b338273ddf6d] and [trunk|https://circleci.com/workflow-run/51cb13e7-1e38-4796-a950-4a3c95fd561c] (there's one failing dtest on trunk, but it's failed occasionally before so we already have CASSANDRA-14157 for it). [~bdeggleston], seeing as you touched {{auth_test}} just recently, would you mind taking a look please? > dtests not determining C* version correctly > --- > > Key: CASSANDRA-14420 > URL: https://issues.apache.org/jira/browse/CASSANDRA-14420 > Project: Cassandra > Issue Type: Bug >Reporter: Sam Tunnicliffe >Assignee: Sam Tunnicliffe >Priority: Major > > In the course of CASSANDRA-14134, the means of extracting the C* version > under test before starting a cluster became broken. This is necessary in > cases where we want to gate values in cassandra.yaml based on version, so a > couple of tests are affected. The specifics are that the global > {{CASSANDRA_VERSION_FROM_BUILD}} was hardcoded to '4.0' and the ways in which > the various tests use it have meant that it was undetected until now. > Also, the {{fixture_since}} which we use to implement the {{@since}} > annotation is broken when a {{--cassandra-version}} is supplied, rather than > {{--cassandra-dir}}, meaning testing against released versions from git isn't > working right now. > Tests directly affected: > * {{auth_test.py}} - CASSANDRA-13985 added some gating of yaml props and > additional checks on CQL results based on the build version. These failed on > 3.11, which is how this issue was uncovered, but they're also broken on 2.2 > on builds.apache.org > * {{user_functions_test.py}} - gates setting a yaml property when version < > 3.0. Failing on 2.2. > * {{upgrade_tests}} - a number of these use the variable, but I don't think > they're actually being run at the moment. > * {{repair_tests/repair_test.py}}, {{replace_address_test.py}} & > {{thrift_test}} all use the global, but only to verify that the version is > not 3.9. As we're not running CI for that version, no-one noticed. -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org