Skip to content

Revise disabled tests #569

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Jul 4, 2025

Conversation

dkropachev
Copy link
Collaborator

@dkropachev dkropachev commented Jul 1, 2025

Does the following:

  1. Rename CassnadraSkip to ScyllaOnly
  2. Go over disabled tests and enable them.
    If test fails:
  • Make test framework ignore it with proper message
  • If it is scylla bug or test needs to be adjusted, create an issue and reference it
  • Fix test to match scylla behavior

Consider that there are two ways to disable test for scylla:

  • Mark it with @ScyllaSkip
  • Mark it with any backend requirement annotation: @CassandraRequirement, @DseRequirement, @BackendRequirement; and do not add sylla-specific requirement.

@dkropachev dkropachev force-pushed the dk/revise-disabled-tests branch 3 times, most recently from 46b7abb to 8056db3 Compare July 1, 2025 21:26
@dkropachev dkropachev requested a review from Bouncheck July 1, 2025 21:35
@dkropachev dkropachev self-assigned this Jul 1, 2025
@dkropachev dkropachev marked this pull request as ready for review July 1, 2025 21:35
@dkropachev dkropachev changed the title Dk/revise disabled tests Revise disabled tests Jul 1, 2025
Copy link
Collaborator

@Bouncheck Bouncheck left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added some comments but i think it boils down to two general things:

Tests with ScyllaSkip that lose it, but remain skipped due to other annotations lose the description why they are skipped for Scylla. In those cases a comment or something would be helpful. Some are almost obvious (like scylla not supporting protocol v5 yet), some are less obvious like handle_id_changes_on_reprepare.

Tests that lose ScyllaSkip and are now enabled generally don't have Scylla versions they are valid for attached. Since they were once disabled I am assuming there are Scylla versions they don't work on.
While the gh actions check last two, they may still fail on driver matrix which also has an entry for 2024.1.
If they are fine for 2024.1 i think it's okay not to waste time finding the exact boundaries, but if some of them don't work on 2024.1 they could already be disabled for it. Otherwise the same work will need to be repeated for the matrix later on.

@dkropachev
Copy link
Collaborator Author

dkropachev commented Jul 2, 2025

Results:

Backend Passed Skipped
Before
Cassandra 4.x 5895 ran 126 skipped
Scylla 2025 5803 ran 181 skipped
After
Cassandra 4.x 5882 ran 125 skipped
Scylla 2025 5857 ran 149 skipped

@dkropachev dkropachev force-pushed the dk/revise-disabled-tests branch from 8056db3 to 221e923 Compare July 3, 2025 14:53
@dkropachev dkropachev requested a review from Bouncheck July 3, 2025 14:54
Copy link
Collaborator

@Bouncheck Bouncheck left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's a related test failure now:

Error:    PreparedStatementIT.handle_id_changes_on_reprepare:599 
Expecting a throwable with cause being exactly an instance of:
  java.lang.IllegalStateException
but current throwable has no cause.

@dkropachev dkropachev force-pushed the dk/revise-disabled-tests branch 2 times, most recently from 6de6d6e to 28fd990 Compare July 4, 2025 00:37
@dkropachev
Copy link
Collaborator Author

@Bouncheck , addressed all the problems, please take a look again.

@dkropachev dkropachev requested a review from Bouncheck July 4, 2025 00:38
@dkropachev dkropachev force-pushed the dk/revise-disabled-tests branch 3 times, most recently from 4d4a6b8 to 13b10e8 Compare July 4, 2025 11:02
@@ -361,26 +422,39 @@ private void should_not_store_metadata_for_conditional_updates(CqlSession sessio
assertThat(row.getBoolean("[applied]")).isFalse();
assertThat(row.getInt("a")).isEqualTo(5);
assertThat(row.getInt("b")).isEqualTo(5);
assertThat(row.getInt("c")).isEqualTo(5);
// assertThat(row.getInt("c")).isEqualTo(5);
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see it again now

@dkropachev dkropachev force-pushed the dk/revise-disabled-tests branch 2 times, most recently from a79d32c to 0a89a46 Compare July 4, 2025 14:00
Go over disabled tests and enable them.
If test fails:
1. Make test framework ignore it with proper message
2. If it is scylla bug or test needs to be adjusted, create an issue and reference it
3. Fix test to match scylla behavior

There are two ways to disable test for scylla:
1. Mark it with @ScyllaSkip
2. Mark it with any backend requirement annotation:
   @CassandraRequirement, @DseRequirement, @BackendRequirement; and do
   not add sylla-specific requirement.
Name does not reflect logic.
This annotation makes test framework to skip all non-scylla backends.
@dkropachev dkropachev force-pushed the dk/revise-disabled-tests branch from 0a89a46 to 3c11d65 Compare July 4, 2025 14:56
@dkropachev dkropachev merged commit b681949 into scylladb:scylla-4.x Jul 4, 2025
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants