Skip to content

CEP-45: Fixes and improvements to MT migration logic - #5119

Open
iamaleksey wants to merge 4 commits into
apache:cep-45-mutation-trackingfrom
iamaleksey:21653
Open

CEP-45: Fixes and improvements to MT migration logic#5119
iamaleksey wants to merge 4 commits into
apache:cep-45-mutation-trackingfrom
iamaleksey:21653

Conversation

@iamaleksey

Copy link
Copy Markdown
Member

Fixes the following TCM-related issues in MT migration logic:

  1. Repeat repairs of already migrated ranges no longer issue redundant transformations
  2. Incomplete repair jobs (Paxos-only, or not involving all replicas) no longer advance ranges to migrated status
  3. A virtual table added for exposing migrated and migrating ranges so operators can have visibility into migration process
  4. Error handling and logging has been improved
  5. [Optional, linked separately] (more on this point below) Batch repair jobs at parent repair session level so that one transformation per set of ranges - and not one transformation per table per set of ranges - gets committed, to reduce potential TCM contention issues

The original motivation for this patch set was to deal with the storm of transformations issued on repair jobs' completions contending and overwhelming TCM.
The build that exposed this problem, however, did not include the following two patch sets that are intended to help with just this sort of problem:

[CASSANDRA-21453](https://issues.apache.org/jira/browse/CASSANDRA-21453) (Move long running cluster metadata operations to a longer timeout)
[CASSANDRA-21456](https://issues.apache.org/jira/browse/CASSANDRA-21456) (Add policy for selecting CMS host when submitting commit request)

So I suspect that commit (5) is no longer necessary. I'm also not a massive fan of having two inconsistent approaches (per-job callback for Accord, per-session callback for MT) co-existing. So my preference is to include all the fixes and improvements except the last one, and revisit committing the optional one only if a build with those trunk TCM improvements still exhibits contention problems.

@iamaleksey

Copy link
Copy Markdown
Member Author

The optional fifth commit (context above): iamaleksey@c19e3e9

@bdeggleston bdeggleston left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

+1 - I agree we should avoid batching if possible.

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