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

Disallow a full/incremental to start if another one is running #1465

Open
adejanovski opened this issue Feb 4, 2024 · 3 comments
Open

Disallow a full/incremental to start if another one is running #1465

adejanovski opened this issue Feb 4, 2024 · 3 comments

Comments

@adejanovski
Copy link
Contributor

adejanovski commented Feb 4, 2024

Project board link

Currently we disallow running twice the same repair, but an incremental could start even if a full is already running for the same keyspace.

We should prevent that from happening and make the scheduler check if another repair is running for the same keyspace before starting a new repair.

┆Issue is synchronized with this Jira Story by Unito
┆Issue Number: REAP-15

@kzalys
Copy link

kzalys commented Feb 15, 2024

Hi @adejanovski, just wondering, what is the reason we want to make sure that we do not have 2 repair sessions of different types running at the same time? Is it just to avoid overstreaming?

@adejanovski
Copy link
Contributor Author

Hi @kzalys, having multiple threads working concurrently on the same sstables is a good way to shoot yourself in the foot and opens the door to race conditions in Cassandra itself. An sstable cannot be compacted and anticompacted at the same time, which is one type of conflict that can happen.
The overstreaming and additional pressure put on the cluster is another good reason not to do this indeed.

@ujo-trackunit
Copy link

We are running incremental repairs for one set of tables in a keyspace but full for another set. Should disallow happen on per table basis instead - or are we doing something bad?

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

No branches or pull requests

3 participants