[ https://issues.apache.org/jira/browse/CASSANDRA-16841?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17410729#comment-17410729 ]
Andres de la Peña commented on CASSANDRA-16841: ----------------------------------------------- Aside from the discussion about changes in {{--only-resource-intensive-tests-}}/{{-force-resource-intensive-tests}}, where I also don't have a strong opinion, the changes look good to me. Here are some CI runs using the modified dtests: ||Branch||CircleCI||Jenkins|| |3.0|[j8|https://app.circleci.com/pipelines/github/adelapena/cassandra/832/workflows/d20d69a8-a495-4d61-b881-b933525a5dc7]| |3.11|[j8|https://app.circleci.com/pipelines/github/adelapena/cassandra/830/workflows/39ba64ae-8ad0-4e70-9e7d-1c711b4fc296]| |4.0|[j8|https://app.circleci.com/pipelines/github/adelapena/cassandra/831/workflows/404ff71d-dff8-4f8b-b675-ad97a3327a15], [j11|https://app.circleci.com/pipelines/github/adelapena/cassandra/831/workflows/f3140558-c781-4293-8ecc-07a7e0448f96]| |trunk|[j8|https://app.circleci.com/pipelines/github/adelapena/cassandra/829/workflows/bc6b2e19-8fc8-43ef-8609-029f526ce94b], [j11|https://app.circleci.com/pipelines/github/adelapena/cassandra/829/workflows/a13907a2-bc02-45f8-a85b-6393fda0081b]|[link|https://ci-cassandra.apache.org/blue/organizations/jenkins/Cassandra-devbranch/detail/Cassandra-devbranch/1101/pipeline]| > Unexpectedly ignored dtests > --------------------------- > > Key: CASSANDRA-16841 > URL: https://issues.apache.org/jira/browse/CASSANDRA-16841 > Project: Cassandra > Issue Type: Bug > Components: Test/dtest/python > Reporter: Ruslan Fomkin > Assignee: Ruslan Fomkin > Priority: Normal > Time Spent: 1h 50m > Remaining Estimate: 0h > > An issue, which I was hit: > When one class in a dtest file is marked as resource intensive, then all > tests in all classes are treated as resource intensive. For example, > [repair_tests/repair_test.py|https://github.com/apache/cassandra-dtest/blob/trunk/repair_tests/repair_test.py] > contains three classes and the last class is marked as resource intensive: > {code:java} > @pytest.mark.resource_intensive > class TestRepairDataSystemTable(Tester): > {code} > So if I try to run an unmarked class: > {code:java} > pytest --cassandra-dir=../cassandra repair_tests/repair_test.py::TestRepair > --collect-only --skip-resource-intensive-tests > {code} > then all tests are ignored > {code:java} > collected 36 items / 36 deselected > {code} > This is because a test is treated to be marked if any class in the same file > has the mark. This bug was introduced in the fix of CASS-16399. Before only > upgrade tests had such behaviour, i.e., if a class is marked as upgrade test, > then all tests are upgrade test in the file. > > This bug, for example, means that if the same file contains one class marked > with vnodes and another class with no_vnodes, then no tests will be executed > in the file. > I also noticed another issue that If a test run is executed with the argument > {{-only-resource-intensive-tests}} and there is no sufficient resources for > resource intensive tests, then no tests were executed. Thus it was necessary > to provide {{-force-resource-intensive-tests}} in addition. > Suggestions for the solutions: > # Require to mark each class and remove the special case of upgrade tests. > This will simplify the implementation and might be more obvious for new > comers. > # Treat {{-only-resource-intensive-tests}} in the same way as > {{-force-resource-intensive-tests}}, so it will be enough to just specify it > even with no sufficient resources. > > -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org