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
add option to force deduplicate children #9070
add option to force deduplicate children #9070
Conversation
Is it possible to add some kind of integration test for this? |
@akuzm i'm not sure we arrange test environment to trigger this kind of error, but:
|
@urykhy at least you can emulate MV insert fail As far as I understand with your setting the second insert (retry) should insert rows into test12345mv and You can implement two test cases with your setting and without. |
d9dc682
to
c998e5f
Compare
01083_expressions_in_engine_arguments
|
add option to force deduplicate children (cherry picked from commit 7b511b2)
add option to force deduplicate children (cherry picked from commit 7b511b2)
I hereby agree to the terms of the CLA available at: https://yandex.ru/legal/cla/?lang=en
Changelog category (leave one):
Changelog entry (a user-readable short description of the changes that goes to CHANGELOG.md):
reduce dataloss chance on insert into table with mv.
Detailed description / Documentation draft:
if you insert data into replicated table with mv, there is a chance, that ZooKeeper exception can cause data inserted into table only, since if CH do not try to insert into mv if block already deduplicated by main table. Usually this works well, but if ZooKeeper error occures after insert into main table, this block will never reach MV. If u set
force_deduplicate_childrens=1
, then CH will try to insert block into MV even if it deduplicated by parent table.partial fix for #2621