-
Notifications
You must be signed in to change notification settings - Fork 40
Use a proper coordinator table schema based on whether the group commit feature is enabled or not #2034
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
Conversation
brfrn169
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM! Thank you!
| } | ||
|
|
||
| @Override | ||
| protected void extraCheckOnCoordinatorTable() {} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The default check doesn't work. Maybe it's related to
Lines 26 to 29 in f57fe48
| // Share the ClusterManager so that the keyspace metadata stay consistent between the Admin and | |
| // AdminTestUtils | |
| admin = new CassandraAdmin(clusterManager, new DatabaseConfig(properties)); | |
| adminTestUtils = new CassandraAdminTestUtils(properties, clusterManager); |
feeblefakie
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM! Thank you!
Torch3333
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thank you
Description
We added the group commit feature for the coordinator table commit in version
3.13and4.x. It added a new columntx_child_idsincoordinator.statetable. So, our plan was as follows:tx_child_idsusingschema-loader --upgradecommandBut, we noticed
schema-loader --repair-all --coordinatorcommand with JDBC storage updates the ScalarDB metadata table by addingtx_child_idscolumn while the existing coordinator table in underlying RDB is left as-is. It results in the inconsistent state and will cause an issue thatschema-loader --upgradewouldn't work with version 4.After some discussions, we changed our plan for version 3 as follows:
schema-loader --repair-allis executed. So, most users don't need to consider the issue.This must be documented in another PR later
Related issues and/or PRs
None
Changes made
ConsensusCommitAdminuse the existing coordinator table schema that doesn't havetx_child_idxcolumn if the group commit feature is disabled, and use the new coordinator table schema that hastx_child_idxcolumn if the group commit feature is enabledChecklist
Additional notes (optional)
None
Release notes
N/A