-
Notifications
You must be signed in to change notification settings - Fork 12
export part - skip or throw on pending mutations and patch parts #1294
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
base: antalya-25.8
Are you sure you want to change the base?
export part - skip or throw on pending mutations and patch parts #1294
Conversation
|
One sec and I will adapt it for export partition |
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.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 28e124685d
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
|
||
| const auto parts = getDataPartsVectorInPartitionForInternalUsage(MergeTreeDataPartState::Active, partition_id, &data_parts_lock); | ||
| { | ||
| auto data_parts_lock = lockParts(); |
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.
Either getMutationsSnapshot or getAlterConversionsForPart grabs a lock. Putting this in a scope to avoid dead locks
|
QA team has requested a report of why I think this is ready to be reviewed / merged. I have written several tests and performed some manual tests that cover the following cases for both part and partition export:
I have also tested that I have also manually tested that outdated parts can be exported if the setting is set to true. It does not work for partition export, and it is expected. -- Honestly, maybe this setting should not even exist. |
Changelog category (leave one):
Changelog entry (a user-readable short description of the changes that goes to CHANGELOG.md):
Add
export_merge_tree_part_throw_on_pending_mutationsandexport_merge_tree_part_throw_on_pending_patch_partsto control the behavior of pending mutations / patch parts on the export part feature. By default it will throw. It is important to note that when exporting an outdated it will never throw.Also add
export_merge_tree_part_allow_outdated_partsthat allows outdated parts to be exported. Defaults to false.Documentation entry for user-facing changes
Add
export_merge_tree_part_throw_on_pending_mutationsandexport_merge_tree_part_throw_on_pending_patch_partsto control the behavior of pending mutations / patch parts on the export part feature. By default it will throw. It is important to note that when exporting an outdated it will never throw.Also add
export_merge_tree_part_allow_outdated_partsthat allows outdated parts to be exported. Defaults to false.CI/CD Options
Exclude tests:
Regression jobs to run: