Skip to content
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

Prevent broken concurrent schema read/writes #1278

Closed
wants to merge 2 commits into from

Conversation

bereng
Copy link
Contributor

@bereng bereng commented Oct 20, 2021

No description provided.

@bereng
Copy link
Contributor Author

bereng commented Oct 20, 2021

CI j8
CI j11

Failures look unrelated, timeouts or known

Copy link
Contributor

@maedhroz maedhroz left a comment

Choose a reason for hiding this comment

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

Left some minor comments, but 2 things I think we have to fix for sure. Looks like we're missing the changes from the 4.0 patch for MigrationManager and SchemaPullVerbHandler.

@bereng
Copy link
Contributor Author

bereng commented Oct 22, 2021

CI j8
CI j11


/** See CASSANDRA-16856/16996. Make sure schema pulls are synchronized to prevent concurrent schema pull/writes */
@Test
public void testNoVisiblePartialSchemaUpdates() throws Exception
Copy link
Contributor

@maedhroz maedhroz Oct 22, 2021

Choose a reason for hiding this comment

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

@bereng So we still need the Byteman rule here, because otherwise there's nothing stopping the table creation from finishing completely before we call Schema.instance.schemaKeyspaceAsMutations(). In other words, we still need some arbitrarily large wait on CFS#apply() to make sure the second thread will see the mutation partially applied.

@bereng
Copy link
Contributor Author

bereng commented Oct 25, 2021

Rebased, squashed
CI j8
CI j11

@bereng bereng deleted the CASSANDRA-16996-trunk branch May 26, 2022 08:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
3 participants